package sort; import java.util.Arrays; public class BubbleSort { public static void main(String[] args) { int[] arrays = { 1, 4, 7, 3, 9, 0 }; for (int i = arrays.length - 1; i > 0; i--) { //外循壞:大-->小 for (int j = 0; j < i; j++) {//內循環:小-->大 if (arrays[j] > arrays[j + 1]) { //交換 int temp = arrays[j + 1]; arrays[j + 1] = arrays[j]; arrays[j] = temp; } } } System.out.println(Arrays.toString(arrays)); } }
package sort; import java.util.Arrays; public class SelectSort { public static void main(String[] args) { int[] arrays = { 1, 4, 7, 3, 9, 0 }; for (int i = 0; i < arrays.length - 1; i++) { int minIndex = i; //尋找最小值的下標 for (int j = i + 1; j < arrays.length; j++) { if (arrays[minIndex] > arrays[j]) { minIndex = j; } } int temp = arrays[i]; arrays[i] = arrays[minIndex]; arrays[minIndex] = temp; } System.out.println(Arrays.toString(arrays)); } }
package sort; import java.util.Arrays; public class InsertSort { public static void main(String[] args) { int[] arrays = { 1, 4, 7, 3, 9, 0 }; for (int i = 1; i < arrays.length; i++) { int marked = arrays[i];//標記 關鍵 while (i > 0 && marked < arrays[i - 1]) { arrays[i] = arrays[i - 1];//右移 i = i - 1; } arrays[i] = marked; } System.out.println(Arrays.toString(arrays)); } }