📜  在C++ STL中列出unique()

📅  最后修改于: 2021-05-30 19:06:08             🧑  作者: Mango

list :: unique()是C++ STL中的内置函数,可从列表中删除所有重复的连续元素。它仅适用于排序列表。

句法:

list_name.unique(BinaryPredicate name)

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

bool name(data_type a, data_type b);

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

下面是上述函数的实现:

CPP
// C++ program to illustrate the
// unique() function
#include 
using namespace std;
 
// Function for binary_predicate
bool compare(double a, double b)
{
    return ((int)a == (int)b);
}
 
// Driver code
int main()
{
    list list = { 2.55, 3.15, 4.16, 4.16,
                          4.77, 12.65, 12.65, 13.59 };
 
    cout << "List is: ";
       
    //sort the list
    list.sort();
 
    // 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 
要从最佳影片策划和实践问题去学习,检查了C++基础课程为基础,以先进的C++和C++ STL课程基础加上STL。要完成从学习语言到DS Algo等的更多准备工作,请参阅“完整面试准备课程”