【c】序列中整数去重

数组中的元素不好直接删除,我们可以把重复的数做标记,将他赋值为0,然后正常打印数组,为0的跳过

cs 复制代码
#include<stdio.h>
int main()
{
	int n;
	scanf("%d",&n);
	int arr[n+1];
	for(int i=1;i<=n;i++)
	{
		scanf("%d",&arr[i]);
	}
	for(int j=1;j<=n-1;j++)
	{
		for(int k=j+1;k<=n;k++)
		{
			if(arr[j]==arr[k])
			arr[k]=0;
		}
	}
	int m=1;
	while (m<=n)
	{
		if(arr[m]!=0)
		printf("%d ",arr[m]);
		m++;
	}
	return 0;
}
相关推荐
雨田言炎6 小时前
2026/9/5 C复习笔记(一)
c语言·笔记
洋不写bug7 小时前
链表面试笔试经典题目详细解析,题目多解法,复杂度分析
数据结构·链表·面试
s_w.h7 小时前
【 刷题 】双指针
算法
啥都想学点的研究生7 小时前
一篇文章讲清楚:K-Means聚类算法
算法·kmeans·聚类
白狐_7988 小时前
408 数据结构|KMP做题方法:next、nextval和高频易错点
数据结构·算法
月华路8 小时前
《模型不玄学》第20章 两种评估视角
人工智能·算法·机器学习
wuyk5558 小时前
从零吃透 MQTT 通信|第 5 章 MQTT 心跳保活机制深度优化,断线检测与智能自动重连
c语言·开发语言·stm32·学习
禹凕8 小时前
快速幂算法详解与实战
python·算法
xxwl5858 小时前
高斯消元法异或版
人工智能·算法·机器学习
sylviiiiiia8 小时前
leetcode hot 100
python·算法·leetcode