Giả sử chúng ta có một tập hợp, sau đó chúng ta phải duyệt tập hợp đó theo hướng ngược lại. Vì vậy, nếu tập hợp giống như S =[10, 15, 26, 30, 35, 40, 48, 87, 98], thì kết quả đầu ra sẽ là:98 87 48 40 35 30 26 15 10.
Để duyệt theo thứ tự ngược lại, chúng ta có thể sử dụng reverse_iterator. Ở đây, chúng ta sẽ sử dụng hàm rbegin () và rend () để lấy phần đầu và phần cuối của trình lặp ngược.
Ví dụ
#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 << " "; }
Đầu ra
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