鱼C论坛

 找回密码
 立即注册
查看: 3324|回复: 20

[技术交流] C++程序:删除重复的数!【回复可见】

[复制链接]
发表于 2022-9-18 20:30:05 | 显示全部楼层 |阅读模式

马上注册,结交更多好友,享用更多功能^_^

您需要 登录 才可以下载或查看,没有账号?立即注册

x
本帖最后由 高山 于 2022-9-18 20:49 编辑

原创声明:本帖为原创帖,欢迎大家转载
介绍:本帖将把一个数组里所有的重复数字全部删掉,仅保留最左边一个
输入说明:第一行为数组个数,第二行为数组内容
输出说明:结果
示例输入:
6
1 5 5 1 6 1
示例输出:
3
5 6 1
代码:
游客,如果您要查看本帖隐藏内容请回复

源代码彩色版
游客,如果您要查看本帖隐藏内容请回复

演示视频:戳此查看
专辑推荐:
推荐的帖子:收录鱼C较好的帖子( 订阅传送门
每周一练系列:每周一练推送( 订阅传送门

评分

参与人数 1荣誉 +6 鱼币 +6 贡献 +6 收起 理由
不二如是 + 6 + 6 + 6 鱼C有你更精彩^_^

查看全部评分

本帖被以下淘专辑推荐:

想知道小甲鱼最近在做啥?请访问 -> ilovefishc.com
回复

使用道具 举报

发表于 2022-9-18 20:48:31 | 显示全部楼层
柿子饼同学 发表于 2022-9-18 20:33
要不... 再介绍一下 unique函数?

直接给他上代码
不过和他的示例输出不一样,因为unique要求数据是有序的
#include <iostream>
#include <vector>
#include <algorithm>

using std::cin, std::cout, std::endl;
using std::vector;
using std::unique, std::sort;
using std::ostream;

ostream &operator<<(ostream &os, const vector<size_t> &v) {
    for(const auto &i: v) os << i << " ";
    return os;
}

int main(void) {
    size_t n; cin >> n;
    vector<size_t> v;
    for(size_t i = 0; i < n; ++i) {
        size_t temp; cin >> temp;
        v.push_back(temp);
    }
    sort(v.begin(), v.end());
    v.erase(unique(v.begin(), v.end()), v.end());
    cout << v << endl;
    return 0;
}

评分

参与人数 1荣誉 +5 鱼币 +5 贡献 +3 收起 理由
高山 + 5 + 5 + 3 鱼C有你更精彩^_^

查看全部评分

想知道小甲鱼最近在做啥?请访问 -> ilovefishc.com
回复 支持 反对

使用道具 举报

发表于 2022-9-18 21:03:27 | 显示全部楼层
希望坚持下去,很棒哦

评分

参与人数 1荣誉 +5 鱼币 +5 贡献 +3 收起 理由
高山 + 5 + 5 + 3 鱼C有你更精彩^_^

查看全部评分

想知道小甲鱼最近在做啥?请访问 -> ilovefishc.com
回复 支持 反对

使用道具 举报

 楼主| 发表于 2022-9-18 20:31:31 | 显示全部楼层
想知道小甲鱼最近在做啥?请访问 -> ilovefishc.com
回复 支持 反对

使用道具 举报

发表于 2022-9-18 20:32:19 | 显示全部楼层
支持
想知道小甲鱼最近在做啥?请访问 -> ilovefishc.com
回复

使用道具 举报

 楼主| 发表于 2022-9-18 20:32:47 | 显示全部楼层
这么冷清?
想知道小甲鱼最近在做啥?请访问 -> ilovefishc.com
回复 支持 反对

使用道具 举报

发表于 2022-9-18 20:33:16 | 显示全部楼层
要不... 再介绍一下 unique函数?
想知道小甲鱼最近在做啥?请访问 -> ilovefishc.com
回复 支持 反对

使用道具 举报

发表于 2022-9-18 20:33:37 | 显示全部楼层
高山 发表于 2022-9-18 20:31
@zhangjinxuan @元豪 @不二如是 @小伤口 求支持

支持!!
想知道小甲鱼最近在做啥?请访问 -> ilovefishc.com
回复 支持 反对

使用道具 举报

 楼主| 发表于 2022-9-18 20:34:46 | 显示全部楼层
柿子饼同学 发表于 2022-9-18 20:33
要不... 再介绍一下 unique函数?

想知道小甲鱼最近在做啥?请访问 -> ilovefishc.com
回复 支持 反对

使用道具 举报

发表于 2022-9-18 20:35:00 | 显示全部楼层
呱一下
想知道小甲鱼最近在做啥?请访问 -> ilovefishc.com
回复 支持 反对

使用道具 举报

发表于 2022-9-18 21:02:54 | 显示全部楼层
人造人 发表于 2022-9-18 20:48
直接给他上代码
不过和他的示例输出不一样,因为unique要求数据是有序的

好强
想知道小甲鱼最近在做啥?请访问 -> ilovefishc.com
回复 支持 反对

使用道具 举报

发表于 2022-9-18 21:04:32 From FishC Mobile | 显示全部楼层
看看
想知道小甲鱼最近在做啥?请访问 -> ilovefishc.com
回复

使用道具 举报

发表于 2022-9-18 21:05:36 From FishC Mobile | 显示全部楼层
O(n^2)很逊耶
想知道小甲鱼最近在做啥?请访问 -> ilovefishc.com
回复 支持 反对

使用道具 举报

发表于 2022-9-18 21:06:36 From FishC Mobile | 显示全部楼层
明天写个O(N)的
想知道小甲鱼最近在做啥?请访问 -> ilovefishc.com
回复 支持 反对

使用道具 举报

 楼主| 发表于 2022-9-19 18:35:03 | 显示全部楼层
不二如是 发表于 2022-9-18 21:03
希望坚持下去,很棒哦

感谢不二如是!!!
想知道小甲鱼最近在做啥?请访问 -> ilovefishc.com
回复 支持 反对

使用道具 举报

 楼主| 发表于 2022-9-19 18:37:01 | 显示全部楼层
不二如是 发表于 2022-9-18 21:03
希望坚持下去,很棒哦

一定的!!!
想知道小甲鱼最近在做啥?请访问 -> ilovefishc.com
回复 支持 反对

使用道具 举报

发表于 2022-9-19 18:49:44 | 显示全部楼层
#include <bits/stdc++.h>

#define MAX 100000

using namespace std;

unordered_map<int, bool> number;
int n, cnt = 0, res[MAX], x;

int main() {
        scanf("%d", &n);
        for (int i = 1; i <= n; ++i) {
                scanf("%d", &x);
                if (!number[x]) {
                        res[++cnt] = x;
                        number[x] = 1;
                }
        }
        printf("%d\n", cnt);
        for (int i = 1; i <= cnt; ++i)
                printf("%d ", res[i]);
}

运用了unordered_map来查看是否重复,但最后输出有些不一样
想知道小甲鱼最近在做啥?请访问 -> ilovefishc.com
回复 支持 反对

使用道具 举报

 楼主| 发表于 2022-9-19 18:50:47 | 显示全部楼层
zhangjinxuan 发表于 2022-9-19 18:49
运用了unordered_map来查看是否重复,但最后输出有些不一样

eng
想知道小甲鱼最近在做啥?请访问 -> ilovefishc.com
回复 支持 反对

使用道具 举报

发表于 2022-9-19 18:51:28 | 显示全部楼层
想知道小甲鱼最近在做啥?请访问 -> ilovefishc.com
回复 支持 反对

使用道具 举报

发表于 2022-9-19 20:26:37 From FishC Mobile | 显示全部楼层
来看看。。。
想知道小甲鱼最近在做啥?请访问 -> ilovefishc.com
回复 支持 反对

使用道具 举报

您需要登录后才可以回帖 登录 | 立即注册

本版积分规则

小黑屋|手机版|Archiver|鱼C工作室 ( 粤ICP备18085999号-1 | 粤公网安备 44051102000585号)

GMT+8, 2024-11-16 21:33

Powered by Discuz! X3.4

© 2001-2023 Discuz! Team.

快速回复 返回顶部 返回列表