【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;
}
相关推荐
atunet29 分钟前
从算法优化到系统加速的多层级思考7
算法
夜不会漫长1 小时前
数据结构:链表
数据结构·链表
Navigator_Z1 小时前
LeetCode //C - 1156. Swap For Longest Repeated Character Substring
c语言·算法·leetcode
Reart1 小时前
Leetcode 1143.最长公共子序列(720)
后端·算法
无相求码2 小时前
const vs #define:C语言常量定义的差异
c语言·算法
Android洋芋2 小时前
AI辅助C盘清理
c语言·开发语言·人工智能·ai辅助c盘清理
ScilogyHunter2 小时前
GCC/Clang 原始字符串详解
c语言·原始字符串
先吃饱再说2 小时前
LeetCode 226. 翻转二叉树
算法
剑锋所指,所向披靡!2 小时前
数据结构之关键路径
数据结构·算法
阿宇的技术日志2 小时前
漏桶、令牌桶、滑动窗口 三限流算法理解
算法·滑动窗口·漏桶·令牌桶