Gnome 排序的 Java 程式
Gnome 排序一次處理一個元素並將它放到正確的位置。我們來看一個示例來實現 Gnome 排序 −
示例
import java.util.Arrays; public class Demo{ static void gnome_sort(int my_arr[], int n){ int index = 0; while (index < n){ if (index == 0) index++; if (my_arr[index] >= my_arr[index - 1]) index++; else{ int temp = 0; temp = my_arr[index]; my_arr[index] = my_arr[index - 1]; my_arr[index - 1] = temp; index--; } } return; } public static void main(String[] args){ int my_arr[] = { 34, 67, 89, 11, 0 , -21 }; gnome_sort(my_arr, my_arr.length); System.out.println("The array after perfroming gnome sort on it is "); System.out.println(Arrays.toString(my_arr)); } }
輸出
The array after perfroming gnome sort on it is [-21, 0, 11, 34, 67, 89]
一個名為 Demo 的類包含一個名為“gnome_sort”的靜態函式。此處,變數“index”被賦值為 0。如果該索引值小於陣列的長度,則該索引值將檢查是否為 0。如果為 0,則增大它 1。否則,如果特定索引處的元素大於陣列“index-1”處的元素,則變數“temp”被賦值為 0,並且將交換這些元素。“index”值遞減。
在 main 函式中,將定義一個帶有特定值的陣列,並且會對該陣列和該陣列的長度呼叫“gnome_sort”函式。輸出在控制檯上列印。
廣告