কম্পিউটার টিউটোরিয়াল

C++ STL-এ map::crbegin() এবং map::crend() ফাংশন

এই আর্টিকেলে C++ STL-এ map::crbegin() এবং map::crend() ফাংশন দুটির ব্যবহার দেখানো হয়েছে।

Map কী?

Map হলো একটি অ্যাসোসিয়েটিভ কন্টেইনার যা কী-ভ্যালু জোড়া হিসেবে ডেটা সংরক্ষণ করে। ডেটা داخلیভাবে কী অনুযায়ী সর্টেড থাকে।

map::crbegin()

Constant Reverse Begin। এটি cbegin()-এর রিভার্স ভার্সন। ম্যাপের শেষ এলিমেন্টের দিকে কনস্ট্যান্ট রিভার্স ইটারেটর ফেরত দেয়। এই ইটারেটর দিয়ে ম্যাপ মডিফাই করা যায় না, শুধু ট্রাভার্স করা যায়।

map::crend()

Constant Reverse End। এটি cend()-এর রিভার্স ভার্সন। ম্যাপের প্রথম এলিমেন্টের ঠিক আগের পজিশনের কনস্ট্যান্ট রিভার্স ইটারেটর ফেরত দেয়।

উদাহরণ: crbegin() এবং crend() দিয়ে রিভার্স ট্রাভার্সাল

#include <bits/stdc++.h>
using namespace std;

int main() {
    map<int, int> TP_Map;
    TP_Map.insert({3, 50});
    TP_Map.insert({2, 30});
    TP_Map.insert({1, 10});
    TP_Map.insert({4, 70});

    // crbegin() দিয়ে শেষ এলিমেন্ট
    auto last = TP_Map.crbegin();
    cout << "শেষ এলিমেন্ট: " << last->first << " -> " << last->second;

    cout << "\n\nTP Map (crbegin/crend দিয়ে রিভার্স):\nMAP_KEY\tMAP_ELEMENT\n";
    for (auto i = TP_Map.crbegin(); i != TP_Map.crend(); i++)
        cout << i->first << "\t" << i->second << endl;
    return 0;
}

আউটপুট

শেষ এলিমেন্ট: 4 -> 70

TP Map (crbegin/crend দিয়ে রিভার্স):
MAP_KEY    MAP_ELEMENT
4          70
3          50
2          30
1          10
  1. C++ STL-এ set::crbegin() এবং set::crend() ফাংশন

  2. C++ STL-এ list crbegin() এবং crend() ফাংশন

  3. C++ STL-এ Array::crbegin() এবং Array::crend()

  4. C++ STL-এ Map এবং Multimap-এ নিম্নক্রমে ডেটা সংরক্ষণ