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

সি++ STL-এ ইনসারশন সোর্ট (Insertion sort using C++ STL)


এই টিউটোরিয়ালে, আমরা সি++ STL-এ ইনসারশন সোর্ট সম্পর্কে আলোচনা করব।

এখানে আমরা std::upper_bound ব্যবহার করি ভুল পজিশনের এলিমেন্ট খুঁজে বের করতে, তারপর std::rotate ব্যবহার করি অনসোর্টেড অংশটিকে রোটেট করে সর্টেড করতে।

উদাহরণ

#include <bits/stdc++.h> // ইনসারশন সোর্ট ফাংশন void insertionSort(std::vector<int> &vec){    for (auto it = vec.begin(); it != vec.end(); it++){       auto const insertion_point =       std::upper_bound(vec.begin(), it, *it);       std::rotate(insertion_point, it, it+1);    } } // অ্যারে প্রিন্ট void print(std::vector<int> vec){    for( int x : vec)    std::cout << x << " ";    std::cout << '\n'; } int main(){    std::vector<int> arr = {2, 1, 5, 3, 7, 5, 4, 6};    insertionSort(arr);    print(arr);    return 0; }

আউটপুট

1 2 3 4 5 5 6 7

  1. C++-এ ইনসার্শন সর্ট টাইম কমপ্লেক্সিটি প্রশ্ন

  2. C++ STL-এ accumulate দিয়ে অ্যারে প্রোডাক্ট বের করা

  3. C++ প্রোগ্রাম: ইনসার্শন সর্ট বাস্তবায়ন

  4. C++ STL-এ কাস্টম অবজেক্টের ভেক্টর সোর্ট করা (Sorting Vector of Custom Objects)