কম্পিউটার

পুনরাবৃত্তিমূলক দ্রুত সাজানোর জন্য জাভা প্রোগ্রাম


নিম্নোক্ত পুনরাবৃত্ত দ্রুত সাজানোর জন্য জাভা প্রোগ্রাম -

উদাহরণ

public class Demo{
   void swap_vals(int arr[], int i, int j){
      int temp = arr[i];
      arr[i] = arr[j];
      arr[j] = temp;
   }
   int partition(int arr[], int l, int h){
      int x = arr[h];
      int i = (l - 1);
      for (int j = l; j <= h - 1; j++){
         if (arr[j] <= x){
            i++;
            swap_vals(arr, i, j);
         }
      }
      swap_vals(arr, i + 1, h);
      return (i + 1);
   }
   void quick_sort(int arr[], int l, int h){
      int my_list[] = new int[h - l + 1];
      int top = -1;
      my_list[++top] = l;
      my_list[++top] = h;
      while (top >= 0){
         h = my_list[top--];
         l = my_list[top--];
         int p = partition(arr, l, h);
         if (p - 1 > l){
            my_list[++top] = l;
            my_list[++top] = p - 1;
         }  
         if (p + 1 < h){
            my_list[++top] = p + 1;
            my_list[++top] = h;
         }
      }
   }
   public static void main(String args[]){
      Demo my_ob = new Demo();
      int my_arr[] = { 34, 76, 41, 32, 11, 0 , 91, 102, -11};
      my_ob.quick_sort(my_arr, 0, my_arr.length - 1);
      int i;
      System.out.println("After iteratively performing quick sort, the array is ");
      for (i = 0; i < my_arr.length; ++i)
      System.out.print(my_arr[i] + " ");
   }
}

আউটপুট

After iteratively performing quick sort, the array is
-11 0 11 32 34 41 76 91 102

ডেমো নামের একটি ক্লাসে 3টি ফাংশন রয়েছে, 'swap_vals' যা একটি অস্থায়ী ভেরিয়েবল ব্যবহার করে মানগুলি অদলবদল করতে ব্যবহৃত হয়, একটি 'পার্টিশন' ফাংশন যা অ্যারেটিকে পিভট মানের উপর ভিত্তি করে দুটি অর্ধে ভাগ করে এবং 'quick_sort' ফাংশন যা একটি ব্যবহার করে পিভট মান এবং এই মানের উপর ভিত্তি করে, অ্যারের মানগুলিকে সাজায়।

প্রধান ফাংশনে, একটি অ্যারের সাথে ডেমো ক্লাসের একটি উদাহরণ তৈরি করা হয়। এই অ্যারেতে 'Quick_sort' ফাংশন বলা হয় এবং আউটপুট কনসোলে প্রদর্শিত হয়।


  1. বাইনারি সন্নিবেশ সাজানোর জন্য জাভা প্রোগ্রাম

  2. ককটেল সাজানোর জন্য জাভা প্রোগ্রাম

  3. পুনরাবৃত্তিমূলক দ্রুত সাজানোর জন্য পাইথন প্রোগ্রাম

  4. পুনরাবৃত্তিমূলক মার্জ সাজানোর জন্য পাইথন প্রোগ্রাম