如何在 C++ set 中反向遍歷?
假設我們有集合 S = [10, 15, 26, 30, 35, 40, 48, 87, 98],反向遍歷該集合,輸出結果應為:98 87 48 40 35 30 26 15 10。
要反向遍歷,我們可以使用 reverse_iterator。這裡我們使用 rbegin() 和 rend() 函式獲取反向迭代器的開始和結束。
示例
#include <iostream>
#include <set>
using namespace std;
int main() {
int arr[] = {10, 15, 26, 30, 35, 40, 48, 87, 98};
set<int> my_set(arr, arr + sizeof(arr) / sizeof(arr[0]));
set<int>::iterator it;
cout << "Elements of Set in forward order: ";
for (it = my_set.begin(); it != my_set.end(); it++)
cout << *it << " ";
set<int>::reverse_iterator rev_it;
cout << "\nElements of Set in reverse order: ";
for (rev_it = my_set.rbegin(); rev_it != my_set.rend(); rev_it++)
cout << *rev_it << " ";
}輸出
Elements of Set in forward order: 10 15 26 30 35 40 48 87 98 Elements of Set in reverse order: 98 87 48 40 35 30 26 15 10
廣告
資料結構
網路
RDBMS
作業系統
Java
iOS
HTML
CSS
Android
Python
C 程式設計
C++
C#
MongoDB
MySQL
Javascript
PHP