當前位置: 首頁>>代碼示例 >>用法及示例精選 >>正文


C++ set::swap()用法及代碼示例


集是一種關聯容器,其中每個元素都必須是唯一的,因為元素的值可以標識它。元素的值一旦添加到集合中就無法修改,盡管可以刪除並添加該元素的修改後的值。

set::swap()
此函數用於交換兩個集合的內容,但是集合的類型必須相同,盡管大小可能會有所不同。

用法:


set1.swap(set2)

返回值:沒有

例子:

Input :set1 = {1, 2, 3, 4}
         set2 = {5, 6, 7, 8}
         set1.swap(set2);
Output:set1 = {5, 6, 7, 8}
         set2 = {1, 2, 3, 4}

Input :set1 = {'a', 'b', 'c', 'd'}
         set2 = {'w', 'x', 'y', 'z'}
         set1.swap(set2);
Output:set1 = {'w', 'x', 'y', 'z'}
         set2 = {'a', 'b', 'c', 'd'}
// CPP program to illustrate 
// Implementation of swap() function 
#include <bits/stdc++.h> 
using namespace std; 
  
int main() 
{ 
    // Take any two sets 
    set<int> set1{ 1, 2, 3, 4 }; 
    set<int> set2{ 5, 6, 7, 8 }; 
  
    // Swap elements of sets 
    set1.swap(set2); 
  
    // Print the first set 
    cout << "set1 = "; 
    for (auto it = set1.begin(); 
         it != set1.end(); ++it) 
        cout << ' ' << *it; 
  
    // Print the second set 
    cout << endl 
         << "set2 = "; 
    for (auto it = set2.begin(); 
         it != set2.end(); ++it) 
        cout << ' ' << *it; 
  
    return 0; 
}

輸出:

set1 =  5 6 7 8
set2 =  1 2 3 4

時間複雜度:不變



相關用法


注:本文由純淨天空篩選整理自AKASH GUPTA 6大神的英文原創作品 set::swap() in C++ STL。非經特殊聲明,原始代碼版權歸原作者所有,本譯文未經允許或授權,請勿轉載或複製。