在C++ STL中的unordered_set emplace()函数

在C++ STL中的unordered_set emplace()函数

unordered_set::emplace() 函数是C++ STL中的内置函数,用于将元素插入unordered_set容器中。只有在容器中不存在该元素时才插入该元素。此插入还会有效地增加容器大小1.

语法 :

unordered_set_name_.emplace(element)

参数 : 此函数接受一个参数 element ,该参数将插入unordered_set容器中。

返回值 : 此函数在成功插入时返回一对值。该对包括一个迭代器,该迭代器指向新插入的元素和一个布尔值 True 。如果要插入的元素已经存在于容器中,则返回一个带有指向已经存在的元素的迭代器和一个布尔值 false

下面的程序演示了 unordered_set::emplace() 函数:

程序1 :

//C++程序,说明
//unordered_set::emplace()函数
 
#include <iostream>
#include <unordered_set>
 
using namespace std;
 
int main()
{
 
    unordered_set<int> sampleSet;
 
    // 插入元素
    sampleSet.emplace(5);
    sampleSet.emplace(10);
    sampleSet.emplace(15);
    sampleSet.emplace(20);
    sampleSet.emplace(25);
 
    // 显示 sampleSet 的所有元素
    cout << "sampleSet Contains: ";
    for (auto itr = sampleSet.begin(); itr != sampleSet.end(); itr++) {
        cout << *itr << " ";
    }
 
    return 0;
}

输出:

sampleSet Contains: 25 5 10 15 20

程序2 :

//C++程序,说明
//unordered_set::emplace()函数
 
#include <iostream>
#include <unordered_set>
 
using namespace std;
 
int main()
{
 
    unordered_set<string> sampleSet;
 
    // 使用emplace()函数插入元素
    sampleSet.emplace("欢迎");
    sampleSet.emplace("来到");
    sampleSet.emplace("GeeksforGeeks");
    sampleSet.emplace("计算机科学门户");
    sampleSet.emplace("For Geeks");
 
    // 显示 sampleSet 的所有元素
    cout << "sampleSet Contains: ";
    for (auto itr = sampleSet.begin(); itr != sampleSet.end(); itr++) {
        cout << *itr << " ";
    }
 
    return 0;
}

输出:

sampleSet Contains: 欢迎 来到 GeeksforGeeks 计算机科学门户 For Geeks

时间复杂度: O(n)

Python教程

Java教程

Web教程

数据库教程

图形图像教程

大数据教程

开发工具教程

计算机教程

C++ 教程