কম্পিউটার

C++ এ সিলেকশন সর্ট ব্যবহার করে স্ট্রিংয়ের একটি অ্যারে সাজান


দ্য সিলেকশন সর্ট অ্যালগরিদম একটি প্রদর্শনীকে একাধিকবার সাজানো না হওয়া অংশ থেকে বেস উপাদান খুঁজে বের করে এবং এটিকে শুরুর দিকে রেখে দেয়। সংকল্প সাজানোর প্রতিটি জোরে, সাজানো না করা সাবয়ারে থেকে বেস কম্পোনেন্ট বাছাই করা হয় এবং সাজানো সাবয়ারেতে স্থানান্তর করা হয়।

উদাহরণ

#include <iostream>
#include <string.h>
using namespace std;
#define MAX_LEN 50
void selectionSort(char arr[][50], int n){
   int i, j, mIndex;
   // Move boundary of unsorted subarray one by one
   char minStr[50];
   for (i = 0; i < n-1; i++){
      // Determine minimum element in unsorted array
      int mIndex = i;
      strcpy(minStr, arr[i]);
      for (j = i + 1; j < n; j++){
         // check whether the min is greater than arr[j]
         if (strcmp(minStr, arr[j]) > 0){
            // Make arr[j] as minStr and update min_idx
            strcpy(minStr, arr[j]);
            mIndex = j;
         }
      }
      // Swap the minimum with the first element
      if (mIndex != i){
         char temp[50];
         strcpy(temp, arr[i]); //swap item[pos] and item[i]
         strcpy(arr[i], arr[mIndex]);
         strcpy(arr[mIndex], temp);
      }
   }
}
int main(){
   char arr[][50] = {"Tom", "Boyaka", "Matt" ,"Luke"};
   int n = sizeof(arr)/sizeof(arr[0]);
   int i;
   cout<<"Given String is:: Tom, Boyaka, Matt, Luke\n";
   selectionSort(arr, n);
   cout << "\nSelection Sorted is::\n";
   for (i = 0; i < n; i++)
      cout << i << ": " << arr[i] << endl;
   return 0;
}

এই উপরের C++ প্রোগ্রামটি প্রাথমিকভাবে প্রদর্শনীতে সবচেয়ে ছোট কম্পোনেন্ট বেছে নেয় এবং ক্লাস্টারের প্রধান কম্পোনেন্টের সাথে অদলবদল করে। এর পরে, এটি ক্লাস্টারের দ্বিতীয় ক্ষুদ্রতম উপাদানটিকে পরবর্তী কম্পোনেন্ট ইত্যাদির সাথে অদলবদল করে। এই পদ্ধতিতে প্রতিটি পাসের জন্য, প্রদর্শনীর সবচেয়ে ছোট উপাদানটি বেছে নেওয়া হয় এবং পুরো ক্লাস্টারটি সাজানো না হওয়া পর্যন্ত তার বৈধ অবস্থায় রাখা হয়। অবশেষে, বিভাগ সাজানোর পদ্ধতি প্রদত্ত স্ট্রিংকে ক্রমবর্ধমান ক্রম অনুসারে সাজায়;

আউটপুট

Given string is:: Tom, Boyaka, Matt, Luke
Selection Sorted::
Boyaka
Luke
Matt
Tom

  1. সিলেকশন সর্ট ব্যবহার করে তারিখ সাজানোর জন্য C++ প্রোগ্রাম

  2. স্ট্রিংকে C++ এ চার অ্যারেতে রূপান্তর করুন

  3. C++ এ স্ট্রিং এর অ্যারে

  4. হিপ সর্ট অ্যালগরিদম ব্যবহার করে 10টি উপাদানের একটি অ্যারে সাজানোর জন্য C++ প্রোগ্রাম