java 去重函数 | 您所在的位置:网站首页 › 数组unique › java 去重函数 |
std::unique 一.总述 unique函数属于STL中比较常用函数,它的功能是元素去重。即”删除”序列中所有相邻的重复元素(只保留一个)。此处的删除,并不 是真的删除,而是指重复元素的位置被不重复的元素给占领了。由于它”删除”的是相邻的重复元素,所以在使用unique函数之前,一般都 会将目标序列进行排序。 功能:对有序的容器重新排列,将第一次出现的元素从前往后排,其他重复出现的元素依次排在后面 二.函数原型 unique函数的函数原型如下:1.只有两个参数,且参数类型都是迭代器: iterator unique(iterator it_1,iterator it_2); 这种类型的unique函数是我们最常用的形式。其中这两个参数表示对容器中[it_1,it_2)范围的元素进行去重(注:区间是前闭后开,即不包含it_2所指的元素),返回值是一个迭代器,它指向的是去重后容器中不重复序列的最后一个元素的下一个元素。 有序的容器: 1 1 2 3 3 4 4 4 5 6 unique处理过的容器: unique unique unique unique unique unique 迭代器指向的地址 1 2 3 4 5 6 1 3 4 4 三、去重函数unique 头文件:#include unique的作用就是"去除"数组中重复的元素,unique去重的过程是将重复的元素移到容器的后面去,实际上这种说法并不正确,应该是把不重复的元素移到前面来: #include #include using namespace std; int main(){ int a[10] = { 0, 7, 7, 6, 1, 1, 5, 5, 8, 9 }; int n = unique(a, a + 10) - a; cout |
CopyRight 2018-2019 实验室设备网 版权所有 |