【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;
}
相关推荐
骇城迷影2 分钟前
代码随想录:二叉树篇(中)
数据结构·c++·算法·leetcode
Zhu_S W11 分钟前
深入理解哈希表:原理、源码与设计哲学
数据结构·散列表
期末考复习中,蓝桥杯都没时间学了16 分钟前
力扣刷题23
算法·leetcode·职场和发展
菜鸡儿齐18 分钟前
leetcode-子集
算法·leetcode·深度优先
今儿敲了吗21 分钟前
28| A-B数对
数据结构·c++·笔记·学习·算法
Desirediscipline23 分钟前
#include<limits>#include <string>#include <sstream>#include <iomanip>
java·开发语言·前端·javascript·算法
Felven31 分钟前
B. Luntik and Subsequences
算法
菜鸡儿齐34 分钟前
leetcode-括号生成
算法·leetcode·职场和发展
fs哆哆38 分钟前
在VB.NET中,随机打乱列表顺序的算法与方法
算法·.net
pen-ai1 小时前
【Yolo系列】Yolov3 目标检测算法原理详解
算法·yolo·目标检测