单身狗

我们这题的思路就是先排序,然后对相邻的两个元素做比较,如果不相等就把前面的记录下来,然后++往后

cpp 复制代码
void bsort(int* arr, int sz)
{
	int i = 0;
	int j = 0;
	for (i = 0; i < sz - 1; i++)
	{
		for (j = 0; j < sz - 1 - i; j++)
		{
			if (arr[j] > arr[j + 1])
			{
				int tmp = arr[j];
				arr[j] = arr[j + 1];
				arr[j + 1] = tmp;
			}
		}
	}
}
void findog(int* arr, int sz, int* num)
{
	bsort(arr, sz);//先排序
	int i = 0;
	int j = 0;
	for (i = 0; i < sz; )
	{
		if (arr[i] == arr[i + 1])//如果相等就+=2,跳过两个元素
		{
			i += 2;
		}
		else
		{
			num[j] = arr[i];//不相等就记录下来然后+1跟下一个作比较
			i++;
			j++;
		}
	}
}
int main()
{
	int arr[] = { 1,2,3,4,5,1,2,3,4,6 };
	int num[2] = { 0 };
	int sz = sizeof(arr) / sizeof(arr[0]);
	findog(arr, sz, num);
	printf("%d %d", num[0], num[1]);
	return 0;
}
相关推荐
菜鸟小九13 小时前
JUC(共享模型之管程、synchronized、wait、park、活跃性、renetrantlock、条件变量)
java·开发语言·juc
kongba00713 小时前
学习COZE编程 / LangGraph 通用工作流项目 提示词模板
java·网络·学习
程序员阿明13 小时前
spring boot3识别PDF图纸
java·spring boot·后端·pdf
blxr_14 小时前
Spring AI自定义Advisor
java·spring
kisloy14 小时前
【反爬虫】极验4 W参数逆向分析
java·javascript·爬虫
动恰客流管家14 小时前
动恰3DV3客流统计方案:赋能智慧公厕精细化运营
数据结构·人工智能·3d
-Rane14 小时前
【C++】红黑树
java·开发语言
人工智能培训14 小时前
如何将高层任务分解为可执行的动作序列?
大数据·人工智能·算法·机器学习·知识图谱
罗湖老棍子14 小时前
Power Strings(信息学奥赛一本通- P1457)
算法·字符串·哈希
吃不胖爹14 小时前
Sharding-JDBC只分表不分库
java