当前位置: 首页>>代码示例 >>用法及示例精选 >>正文


C++ list unique()用法及代码示例


list::unique()是C++ STL中的Inbulit函数,该函数从列表中删除所有重复的连续元素。
用法:

list_name.unique(BinaryPredicate name)

参数:该函数接受一个可选的参数,该参数是一个二进制谓词,如果元素应被视为相等,则返回true。它具有以下语法:

bool name(data_type a, data_type b);

返回值:此函数不返回任何内容。


下面是上述函数的实现:

// C++ program to illustrate the 
// unique() function 
#include <bits/stdc++.h> 
using namespace std; 
  
// Function for binary_predicate 
bool compare(double a, double b) 
{ 
    return ((int)a == (int)b); 
} 
  
// Driver code 
int main() 
{ 
    list<double> list = { 2.55, 3.15, 4.16, 4.16, 
                          4.77, 12.65, 12.65, 13.59 }; 
  
    cout << "List is: "; 
  
    // unique operation on list with no parameters 
    list.unique(); 
  
    // starts from the first element 
    // of the list to the last 
    for (auto it = list.begin(); it != list.end(); ++it) 
        cout << *it << " "; 
  
    // unique operation on list with parameter 
    list.unique(compare); 
  
    cout << "\nList is: "; 
  
    // starts from the first element 
    // of the list to the last 
    for (auto it = list.begin(); it != list.end(); ++it) 
        cout << *it << " "; 
  
    return 0; 
}
输出:
List is: 2.55 3.15 4.16 4.77 12.65 13.59 
List is: 2.55 3.15 4.16 12.65 13.59


相关用法


注:本文由纯净天空筛选整理自Harsha_Mogali大神的英文原创作品 list unique() in C++ STL。非经特殊声明,原始代码版权归原作者所有,本译文未经允许或授权,请勿转载或复制。