इस ट्यूटोरियल में, हम C++ में विभिन्न कंटेनर्स के सबरेंज (subranges) को स्वैप करने को समझने के लिए एक प्रोग्राम पर चर्चा करेंगे।
इसके लिए हमें वेक्टर्स और लिस्ट्स प्रदान किए जाएंगे, और हमें उनके कुछ तत्वों को स्वैप करना होगा।
उदाहरण
#include <algorithm>
#include <iostream>
#include <list>
#include <vector>
using namespace std;
int main() {
vector<int> v = { -10, -15, -30, 20, 500 };
list<int> lt = { 10, 50, 30, 100, 50 };
// पहले 3 तत्वों को लिस्ट के पहले 3 तत्वों से स्वैप करें
swap_ranges(v.begin(), v.begin() + 3, lt.begin());
for (int n : v) cout << n << ' ';
cout << '\n';
for (int n : lt) cout << n << ' ';
cout << endl;
return 0;
}
आउटपुट
10 50 30 20 500 -10 -15 -30 100 50
व्याख्या
swap_rangesएल्गोरिदम दो रेंज के तत्वों को स्वैप करता है।- पहली रेंज:
v.begin()सेv.begin()+3(पहले 3 तत्व)। - दूसरी रेंज:
lt.begin()से शुरू (पहले 3 तत्व)। - वेक्टर के पहले 3 तत्व (-10, -15, -30) लिस्ट के पहले 3 तत्वों (10, 50, 30) से स्वैप हो जाते हैं।
- दोनों कंटेनर्स के शेष तत्व अपरिवर्तित रहते हैं।