透過在 C++ 中傳入元素值從 Set 中刪除一個元素的方法
此處我們將演示如何透過傳入元素值來從 set 中刪除一個元素。例如,如果 set 為 {10、20、30、50、60、80、90、100、120、200、500},我們要刪除 90,則結果為:{10、20、30、50、60、80、100、120、200、500}
在 set 中每個元素只出現一次並且是有序的。元素的值在新增時不可修改,因此它是不可變的。但我們可以從中新增或移除元素。
我們可以使用 erase() 方法來完成此任務。
示例
#include<iostream>
#include<set>
using namespace std;
void dispSet(set<int> myset) {
set<int>::iterator it;
for (it = myset.begin(); it != myset.end(); ++it)
cout << ' ' << *it;
cout << '\n';
}
void deleteUsingValue(set<int> myset, int del_element) {
cout << "Set before deletion:";
dispSet(myset);
myset.erase(del_element);
cout << "Set after deleting "<< del_element<< ": ";
dispSet(myset);
}
int main() {
set<int> tempSet;
int arr[] = {10, 20, 30, 50, 60, 80, 90, 100, 120, 200, 500};
int n = sizeof(arr)/sizeof(arr[0]);
for (int i = 0; i < n; i++)
tempSet.insert(arr[i]);
int del_element = 90;
deleteUsingValue(tempSet, del_element);
}輸出
Set before deletion: 10 20 30 50 60 80 90 100 120 200 500 Set after deleting 90: 10 20 30 50 60 80 100 120 200 500
廣告
資料結構
網路
RDBMS
作業系統
Java
iOS
HTML
CSS
Android
Python
C 程式設計
C++
C#
MongoDB
MySQL
Javascript
PHP