【手把手带你刷好题】—— 55.数组去重(牛客)

简介: 数组去重(牛客)

【前言】

今天是刷题打卡第55天!

一起加油鸭铁汁们,哈哈,实在是词穷了。


原题:序列中整数去重

原题链接序列中整数去重_牛客题霸_牛客网

题目描述:

示例:

输入:5
     10 12 93 12 75
输出:10 12 93 75

思路 :

比较简单,都在代码注释后面咯。

代码执行:

#include<stdio.h>
int main()
{
    int n = 0;
    scanf("%d",&n);
    int arr[5001] = {0};
    int index = 0;//数组中的数
    for(int i = 0; i < n; i++)
    {
        scanf("%d",&index);//依次输入
        if(!arr[index])//如果输入的数不是0
        {
            arr[index] = index;//这样写,可以保留数组中的相同数的一个
            printf("%d ", arr[index]);
        }
    }
    return 0;
}

改编:给定一个正整数数组,对它进行去重操作。

代码如下:

#include<stdio.h>
int main()
{
  int arr[] = { 1,2,2,3,4,5,3,4,6,7 };
  int sz = sizeof(arr) / sizeof(arr[0]);
  //两层循环遍历
  for (int i = 0; i < sz; i++)
  {
    for (int j = i + 1; j < sz; j++)//只需要从后面那个元素开始比较
    {
      if (arr[j] == arr[i])
      {
        arr[j] = 0;
      }
    }
  }
  for (int i = 0; i < sz; i++)
  {
    if (arr[i])//打印不为0的数组元素
    {
      printf("%d ", arr[i]);
    }
  }
  return 0;
}


结语

今天是刷题打卡第55天!

加油吧少年。


相关文章
|
C语言
牛客网练习题刷
牛客网练习题刷
124 0
牛客网练习题刷
手把手带你刷好题(牛客刷题③)
手把手带你刷好题(牛客刷题③)
手把手带你刷好题(牛客刷题③)
|
存储 索引 容器
手把手带你刷好题(牛客刷题⑦)
手把手带你刷好题(牛客刷题⑦)
|
Java API C++
手把手带你刷好题(牛客刷题⑤)
手把手带你刷好题(牛客刷题⑤)
|
缓存 Java
手把手带你刷好题(牛客刷题④)
手把手带你刷好题(牛客刷题④)
手把手带你刷好题(牛客刷题⑥)
手把手带你刷好题(牛客刷题⑥)
|
编译器 测试技术 C++
听说三数之和是你梦碎的地方?Leetcode每日刷题(day1)(上)
听说三数之和是你梦碎的地方?Leetcode每日刷题(day1)
听说三数之和是你梦碎的地方?Leetcode每日刷题(day1)(上)

热门文章

最新文章