去除已排序数列中的重复数--c++实现
来源:互联网 发布:淘宝直通车权重怎么看 编辑:程序博客网 时间:2024/06/18 09:34
一组数列已经排序,需要去除其中重复的数,同时输出去除重复数之后数列的长度。
有两种方法。
1、使用c++的STL中的unique函数来实现
#include<iostream>
#incnlude<algorithm>
#include<vector>
using namespace std;
int main()
{
vector<int> vec;
int n;
cin >> n;
for(int i = 0; i < n; i++)
{
int value;
cin >> value;
vec.push_back(value);
}
//若无序,则使用sort函数排个序
sort(vec.begin(),vec.end());
erase(unique(vec.begin(),vec.end()),vec.end());
cout << vec.size() << endl;
return 0;
}
2、不使用unique
#include<iostream>
#include<vector>
using namespace std;
int main()
{
vector<int> vec;
int n;
cin >> n;
for(int i = 0; i < n; i++)
{
int value;
cin >> value;
vec.push_back(value);
}
int index = 0;
for(int i = 1; i < n; i++)
{
if(vec[index] != vec[i])
vec[++index] = vec[i];
}
cout << index+1 << endl;
for(int i = 0; i < index+1; i++)
cout << vec[i] << " ";
return 0;
}
- 去除已排序数列中的重复数--c++实现
- 去除已排序数组中的重复元素
- 删除已排序数组中的重复数
- 去除已排序链表中的重复元素
- 26. Remove Duplicates from Sorted Array(删除已排序数组中的重复数)-two pointers
- 删除已排序数组中的重复元素
- 删除已排序数组中的重复数据
- 将数组中重复的数去除,并排序
- 去除源文件中的重复行的程序流程及其C代码实现
- 算法系列--去除排序数组中的重复元素
- Linux uniq --去除排序过的文件中的重复行
- 利用排序的原理去除集合中的重复元素
- 华为机试题C++-去除重复字符并排序
- 【C++】去除排序数组中重复的元素
- 【LeetCode题目记录-10】已排序的数组去除重复元素
- 数组去除重复的数
- [算法]删除已排序数组中的重复元素
- LeetCode 刷题: 删除已排序链表中的重复节点
- js原生 获取url参数
- 搭建高性能的PHP Redis开发环境
- digits —segmentation demo
- 学习笔记:Java_I/O(part_one)
- 563. Binary Tree Tilt **
- 去除已排序数列中的重复数--c++实现
- 高仿Mobike个人中心
- Android Intent传递对象 Serializable & Parcelable
- Glide使用详解
- Ubuntu下配置GTK+开发环境
- H2O学习笔记(二)——H2O Flow
- 大数据IMF传奇行动绝密课程第115课:超大规模spark性能优化本质思考
- ListView始终显示垂直滚动条设置
- MongoDB学习记录05-原子性操作