C++ STL中unordered_set swap()函数

C++ STL中unordered_set swap()函数

unordered_set::swap() 方法是C++ STL中的一个内置函数,用于交换两个unordered_set容器的值。它交换了两个unordered_set容器的元素。它们的大小可能会不同,但是它会交换元素并改变元素顺序。

语法:

unordered_set_名字1.swap(unordered_set_名字2)

参数: 函数接受一个强制参数 名字2 ,指定要与第一个unordered_set交换的第二个unordered_set。

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

以下程序说明了 unordered_set::swap() 函数的用法:

// C++ program to illustrate the
// unordered_set_swap() function
#include <iostream>
#include <unordered_set>
 
using namespace std;
 
int main()
{
 
    unordered_set<int> arr1 = { 1, 2, 3, 4, 5 };
    unordered_set<int> arr2 = { 5, 6, 7, 8, 9 };
 
    cout << "The elements of arr1 before swap(): ";
 
    for (auto it = arr1.begin(); it != arr1.end(); it++) {
        cout << *it << " ";
    }
 
    cout << "\nThe elements of arr2 before swap(): ";
    for (auto it = arr2.begin(); it != arr2.end(); it++) {
        cout << *it << " ";
    }
 
    // 内置swap函数来交换两个unordered_set的元素
    swap(arr1, arr2);
 
    cout << "\n\nThe elements of arr1 after swap(): ";
    // 数组元素
    for (auto it = arr1.begin(); it != arr1.end(); it++) {
        cout << *it << " ";
    }
 
    cout << "\nThe elements of arr2 after swap(): ";
    for (auto it = arr2.begin(); it != arr2.end(); it++) {
        cout << *it << " ";
    }
 
    return 0;
}

输出结果:

The elements of arr1 before swap(): 5 1 2 3 4 
The elements of arr2 before swap(): 9 5 6 7 8 

The elements of arr1 after swap(): 9 5 6 7 8 
The elements of arr2 after swap(): 5 1 2 3 4

时间复杂度: O(1)

辅助空间: O(1)

Python教程

Java教程

Web教程

数据库教程

图形图像教程

大数据教程

开发工具教程

计算机教程

C++ 教程