Computer >> Hướng Dẫn Máy Tính >  >> Lập Trình >> Java

Chương trình Java thuật toán Stooge Sort


Chương trình Java cho Stooge sort:

Ví dụ

import java.io.*; public class Demo {    static void stooge_sort(int my_arr[], int l_val, int h_val){       if (l_val >= h_val)       return;       if (my_arr[l_val] > my_arr[h_val]){          int temp = my_arr[l_val];          my_arr[l_val] = my_arr[h_val];          my_arr[h_val] = temp;       }       if (h_val-l_val+1 > 2){          int temp = (h_val-l_val+1) / 3;          stooge_sort(my_arr, l_val, h_val-temp);          stooge_sort(my_arr, l_val+temp, h_val);          stooge_sort(my_arr, l_val, h_val-temp);       }    }    public static void main(String args[]){       int my_arr[] = {12, 34, 67, 91, 11, 0, 89, 102, 39};       int n = my_arr.length;       stooge_sort(my_arr, 0, n-1);       System.out.println("The array after performing stooge sort is ");       for (int i=0; i < n; i++)       System.out.print(my_arr[i] + " ");    } }

Kết quả

The array after performing stooge sort is 0 11 12 34 39 67 89 91 102

Lớp Demo chứa hàm stooge_sort nhận mảng, trái, phải làm tham số. Nếu trái lớn hơn phải, không trả về gì. Nếu phần tử trái lớn hơn phải, hoán đổi đơn giản. Dựa trên giá trị height và trái, stooge_sort được gọi đệ quy. Trong main, mảng định nghĩa, độ dài lưu vào biến. Hàm được gọi và kết quả hiển thị.