unique函数去除重复元素在vector中的应用



#include<stdio.h>

#include<stdlib.h>

#include<string.h>

#include<vector>

#include<algorithm>

#include<iostream>

using namespace std;

int main()

{

int a[10]={1,7,4,1,7,4,1,7,4,0};

sort(a,a+10);

vector<int> ver(a,a+10);

ver.resize(15,3);//将容器size扩展为15,并在末尾加上5个值为3的元素

vector<int>::iterator iter=unique(ver.begin(),ver.end());//筛选出无重复的序列

ver.erase(iter,ver.end());//擦除剩余的重复元素

for(iter=ver.begin();iter!=ver.end();iter++)

printf("%d",*iter);

return 0;

}

/*我们都知道unique的功能是去除相邻的重复元素(只保留一个),还有一个容易忽视的特性是它并不真正把重复的元素删除,不知道这个特性用起来就会出问题。

用erase函数可以删除重复的元素*/

版权声明:本文为博主原创文章,未经博主允许不得转载。

时间: 2024-11-05 12:06:17

unique函数去除重复元素在vector中的应用的相关文章

去除List集合中的重复元素? 如果没有Set集合,List集合是怎么去除重复元素的(字符串类型,自定义类型)?

 关键字: 如果没有Set集合,List集合是怎么去除重复元素的(字符串类型)?  *   *     思考: List就可以存储重复元素,那么需求中容器中的元素必须保证唯一性,该如何解决呢??  *      *   去除List集合中的重复元素?  * * 思路: * * 1.首先我需要另一个临时容器tempList,用来存放我认为应该保留的元素.(也就是不重复的元素) * 2.然后我们应该遍历原容器, 一个一个的取出元素, 放入tempList. * 当tempList里已经装有刚刚取出的

java集合 collection-list-ArrayList 将自定义对象作为元素存到ArrayList集合中,并去除重复元素。

import java.util.*; /* 将自定义对象作为元素存到ArrayList集合中,并去除重复元素. 比如:存人对象.同姓名同年龄,视为同一个人.为重复元素. 思路: 1,对人描述,将数据封装进人对象. 2,定义容器,将人存入. 3,取出. List集合判断元素是否相同,依据是元素的equals方法. */ class Person { private String name; private int age; Person(String name,int age) { this.n

Python列表去除重复元素

主要尝试了3种列表去除重复元素 #2.去除列表中的重复元素 #set方法 def removeDuplicates_set(nums): l2 = list(set(l1)) #用l1的顺序排序l2 #l2.sort(key=l1.index) return l2 #重构字典方法 def removeDuplicates_dict_fromkeys(nums): l2 = {}.fromkeys(nums).keys() return list(l2) #列表推到式,普通方法 def remov

List集合去除重复元素,不打乱顺序(数组转List)

//数组转List List<String> objStr_0_List = Arrays.asList(objArr[0].split("#,#")); //List集合去除重复元素,不打乱顺序 private List<String> getNon_repeatList(List<String> Str_List) { List<String> resultList = new ArrayList<String>(); S

去除重复元素

1: package cn.cqu.huang; 2: 3: import java.util.ArrayList; 4: import java.util.List; 5: 6: public class MyArrayList { 7: 8: //去除重复元素 9: public static void main(String[] args){ 10: List<String> lst = new ArrayList<String>(); 11: lst.add("a

TreeSet中不能去除重复元素。。。。。。。。。。。。。。

import java.util.Comparator;import java.util.Set;import java.util.TreeSet; /** * TreeSet如果是存String,默认会按照字母排序 * */public class Demo01 { public static void main(String[] args) { // TODO Auto-generated method stub //在一个集合中存储了无序并且重复的字符串,让其有序(字典顺序),而且还不能去

js 去除重复元素

方法一: 1 //数组去重的方法 2 Array.prototype.unique=function(){ 3 //集中声明变量 4 var 5 oldArr=this, 6 newArr=[oldArr[0]], 7 len=oldArr.length, 8 i=1; 9 //过滤空数组 10 if(!len) return this; 11 //过滤重复元素 12 for(;i<len;i++){ 13 newArr.indexOf(oldArr[i])<0 ? newArr.push(_

python去除重复元素

目的:让我们两个列表压缩后,去除重复的点: 1.set()方法: 蓦然回首,那人却在灯火阑珊处: 这个方法实现了我想要的压缩后的列表的重复删除:   list4 = [0,0,1,2,4,5,6,7,5,0,2] list5 = [2,5,4,8,5,6,6,6,6,2,8] list6 = zip(list4,list5) list7 = list(list6) print(list7) a = list(set(list7)) print(a) #结果: [(0, 2), (0, 5), (

NSArray去除重复元素

直接上代码吧! 1.可以创建一个新的数组,对需要去除重复的数组进行遍历,如果新数组不包含就数组,那么添加元素,如果包含就不添加. 1 NSMutableArray *array = [NSMutableArray arrayWithObjects:@"1",@"2",@"2",@"4",@"5",@"6",@"7",@"8",@"9&qu