কম্পিউটার

g++ এ নীতি-ভিত্তিক ডেটা স্ট্রাকচার


g++ কম্পাইলার লিনাক্সে GNU-এর জন্য একটি C++ কম্পাইলার।

g++ কম্পাইলার কিছু বিশেষ ডেটা স্ট্রাকচারের জন্যও সমর্থন যোগ করে যা C++ প্রোগ্রামিং ল্যাঙ্গুয়েজ স্ট্যান্ডার্ড লাইব্রেরিতে নেই। এগুলি নীতি-ভিত্তিক ডেটা স্ট্রাকচার হিসাবে পরিচিত৷

নীতি-ভিত্তিক ডেটা স্ট্রাকচার প্রোগ্রামারকে C++ std লাইব্রেরির স্ট্যান্ডার্ড ডেটা স্ট্রাকচারের তুলনায় উচ্চ-কর্মক্ষমতা, শব্দার্থগত নিরাপত্তা এবং নমনীয়তা প্রদান করে।

আপনার প্রোগ্রামে এই ডেটা স্ট্রাকচারগুলিকে অন্তর্ভুক্ত করতে, নিম্নলিখিত লাইনগুলি যোগ করা উচিত,

#include <ext/pb_ds/assoc_container.hpp>
using namespace __gnu_pbds;

উদাহরণ

এই নীতি-ভিত্তিক ডেটা স্ট্রাকচারগুলি কীভাবে কাজ করে তা দেখার জন্য আসুন একটি প্রোগ্রাম দেখি।

#include <ext/pb_ds/assoc_container.hpp>
#include <ext/pb_ds/tree_policy.hpp>
#include <functional>
#include <iostream>
using namespace __gnu_pbds;
using namespace std;
typedef tree<int, null_type, less<int>, rb_tree_tag, tree_order_statistics_node_update>
new_data_set;
int main() {
   new_data_set data;
   data.insert(34);
   data.insert(785);
   data.insert(12);
   data.insert(87);
   cout<<"The value at index 2 is "<<*data.find_by_order(2)<<endl;
   cout<<"The index of number 87 is "<<data.order_of_key(87)<<endl;
   return 0;
}

আউটপুট

The value at index 2 is 785
The index of number 87 is 4

এই ডেটা স্ট্রাকচারগুলি এতই বহুমুখী যে আপনি উপাদানের সূচী পরীক্ষা করা, সূচকে উপাদানগুলি খুঁজে বের করার মতো অনেকগুলি কাজ করতে পারেন৷


  1. করেসপন্ডেন্স ভিত্তিক ডেটা স্ট্রাকচার

  2. ডেটা স্ট্রাকচারে সংলগ্নতা তালিকা

  3. ডেটা স্ট্রাকচারে ন্যূনতম স্প্যানিং ট্রি

  4. ডাটা স্ট্রাকচারে বাইনারি ট্রি রিপ্রেজেন্টেশন