一、冒泡排序
对比相邻的元素,如果第i个元素比第i+1个元素大,就交换两个元素。
完成一次遍历后,会将最大的值放在所有元素的末尾,然后继续遍历将第二大的元素放在倒数第二位。依次类推,直到所有元素有序。
public static void bubbleSort(int[] nums) { for (int i = 0; i < nums.length; i++) { for (int j = 0; j < nums.length - i - 1; j++) { if (nums[j] > nums[j + 1]) { int temp = nums[j + 1]; nums[j + 1] = nums[j]; nums[j] = temp; } } } }
二、选择排序
首先在序列中找到最小的元素,然后将其存放在起始的位置。然后继续寻找第二小的元素,然后放到第二位。依次类推,直到所有元素有序。
public static void selectionSort(int[] nums) { for (int i = 0; i < nums.length; i++) { int minIndex = i; for (int j = i + 1; j < nums.length; j++) { if (nums[minIndex] > nums[j]) { minIndex = j; } } i