整数排序
给一组整数,按照升序排序,使用选择排序,冒泡排序,插入排序或者任何 O(n2) 的排序算法。
样例
样例 1:
输入: [3, 2, 1, 4, 5]
输出: [1, 2, 3, 4, 5]
样例解释:
返回排序后的数组。
样例 2:
输入: [1, 1, 2, 1, 1]
输出: [1, 1, 1, 1, 2]
样例解释:
返回排好序的数组。
import java.util.Arrays; public class Solution { public static void main(String args[]) { int[] Array = { 3, 2, 1, 4, 5 }; Sort sort_m = new Sort(); sort_m.bubble(Array); sort_m.select(Array); sort_m.insert(Array); } } class Sort { /** * 数组排序算法实现 */ public void bubble(int[] array) { /** * 冒泡排序实现 */ int length = array.length; for (int i = 0; i < length; i++) { for (int j = 0; j < length - i - 1; j++) { if (array[j] > array[j + 1]) { int tmp = array[j]; array[j] = array[j + 1]; array[j + 1] = tmp; } } } System.out.println(Arrays.toString(array)); } public void select(int[] array) { /** * 选择排序实现 */ int length = array.length; for (int i = 0; i < length; i++) { for (int j = i + 1; j < length; j++) { if (array[i] > array[j]) { int tmp = array[i]; array[i] = array[j]; array[j] = tmp; } } } System.out.println(Arrays.toString(array)); } public void insert(int[] array) { /** * 插入排序实现 */ int insertNum; for (int i = 1; i < array.length; i++) { insertNum = array[i]; int j = i - 1; while (j > 0 && array[j] > insertNum) { array[j + 1] = array[j]; j--; } } System.out.println(Arrays.toString(array)); } }