java:冒泡排序、选择排序、插入排序实现

整数排序

给一组整数,按照升序排序,使用选择排序,冒泡排序,插入排序或者任何 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));
	}
}

  

 

posted @ 2019-03-14 13:25  南非波波  阅读(386)  评论(0编辑  收藏  举报