बाइनरी इंसर्शन सॉर्ट हर पुनरावृति पर एक विशिष्ट इंडेक्स पर एक एलिमेंट डालने के लिए सही स्थिति खोजने के लिए बाइनरी सर्च का उपयोग करता है। पहले, वह स्थान ढूंढा जाता है जहां एलिमेंट डाला जाना है। फिर, एलिमेंट्स को अगले राइट स्थान पर शिफ्ट किया जाता है। अब, विशिष्ट एलिमेंट को स्थिति में रखा जाता है।
बाइनरी इंसर्शन सॉर्ट के लिए जावा कोड निम्नलिखित है:
उदाहरण
public class Demo{
void Cocktail_Sort(int my_arr[]){
boolean swapped = true;
int start = 0;
int end = my_arr.length;
while (swapped == true) {
swapped = false;
for (int i = start; i < end - 1; ++i) {
if (my_arr[i] > my_arr[i + 1]) {
int temp = my_arr[i];
my_arr[i] = my_arr[i + 1];
my_arr[i + 1] = temp;
swapped = true;
}
}
if (swapped == false)
break;
swapped = false;
end = end - 1;
for (int i = end - 1; i >= start; i--) {
if (my_arr[i] > my_arr[i + 1]) {
int temp = my_arr[i];
my_arr[i] = my_arr[i + 1];
my_arr[i + 1] = temp;
swapped = true;
}
}
start = start + 1;
}
}
void print_values(int my_arr[]){
for (int i = 0; i < my_arr.length; i++)
System.out.print(my_arr[i] + " ");
System.out.println();
}
public static void main(String[] args){
Demo my_object = new Demo();
int my_arr[] = { 6, 8, 34, 21, 0, 1, 98, 64, 6};
System.out.println("ऐरे शामिल करता है ");
for (int i = 0; i < my_arr.length; i++)
System.out.print(my_arr[i] + " ");
System.out.println();
my_object.Cocktail_Sort(my_arr);
System.out.println("कॉकटेल सॉर्ट लागू करने के बाद ऐरे है : ");
my_object.print_values(my_arr);
}
}
आउटपुट
ऐरे शामिल करता है 6 8 34 21 0 1 98 64 6 कॉकटेल सॉर्ट लागू करने के बाद ऐरे है : 0 1 6 6 8 21 34 64 98