Stooge 排序的 Java 程序
以下是 Stooge 排序的 Java 程序 −
示例
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] + " "); } }
输出
The array after performing stooge sort is 0 11 12 34 39 67 89 91 102
一个名为 Demo 的类包含一个名为 ‘stooge_sort’ 的函数,它将数组、左、高度和右值作为参数。如果左值大于右值,则不会返回任何内容。如果数组中左值大于数组中右值,则执行简单的交换。
基于高度值和左值,“stooge_sort” 函数通过传递左值和高度值来调用。在主函数中,定义数组,并将它的长度存储在一个值中。通过传递这些值来调用该函数,并将输出显示在控制台上。
广告