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

রিকার্সিভ ইনসার্শন সোর্টের জন্য জাভা প্রোগ্রাম


রিকার্সিভ ইনসার্শন সোর্টের জন্য জাভা প্রোগ্রাম নিচে দেওয়া হলো:

উদাহরণ

import java.util.Arrays; public class Demo{    static void recursive_ins_sort(int my_arr[], int arr_len){       if (arr_len <= 1)          return;       recursive_ins_sort( my_arr, arr_len-1 );       int last = my_arr[arr_len-1];       int j = arr_len-2;       while (j >= 0 && my_arr[j] > last){          my_arr[j+1] = my_arr[j];          j--;       }       my_arr[j+1] = last;    }    public static void main(String[] args){       int my_arr[] = {11, 23, 67, 83, 42, 11, 0};       recursive_ins_sort(my_arr, my_arr.length);       System.out.println("The array elements after implementing insertion sort is ");       System.out.println(Arrays.toString(my_arr));    } }

আউটপুট

The array elements after implementing insertion sort is [0, 11, 11, 23, 42, 67, 83]

Demo ক্লাসে ইনসার্শন সোর্টের জন্য স্ট্যাটিক রিকার্সিভ ফাংশন আছে। এই ফাংশন অ্যারে এবং এর দৈর্ঘ্য প্যারামিটার হিসেবে নেয়। এখানে বেশ কিছু শর্ত চেক করা হয়। যদি অ্যারের দৈর্ঘ্য ১-এর চেয়ে কম বা সমান হয়, তবে সেটি যেন আছে তেনি রিটার্ন করা হয়। অন্যথায়, অ্যারে এলিমেন্টগুলো সর্ট করা হয় বারবার অ্যারের আকার কমিয়ে।

অ্যারের শেষ এলিমেন্টটি সঠিক পজিশনে রাখা হয় এবং আরেকটি ভেরিয়েবল ইনডেক্স হিসেবে ব্যবহার করা হয় যাতে চেক করা যায় অ্যারের শেষ এলিমেন্টটি সেই নির্দিষ্ট ইনডেক্স এলিমেন্টের সমান কিনা। এইভাবে, এলিমেন্টগুলো তাদের সঠিক পজিশনে রাখা হয়। যদি কি-র চেয়ে বড় কোনো এলিমেন্ট मिलে, তবে সেটিকে পরবর্তী পজিশনে Increments করা হয়। প্রাসঙ্গিক আউটপুট কনসোলে প্রদর্শন করা হয়েছে।

  1. রিকার্সিভ ইনসারশন সর্টের পাইথন প্রোগ্রাম

  2. কাউন্টিং সর্টের পাইথন প্রোগ্রাম

  3. পাইথনে ইনসারশন সর্ট প্রোগ্রাম

  4. পাইথন প্রোগ্রাম: ইনসারশন সোর্ট অ্যালগরিদম