插入排序——直接插入排序

直接插入排序比较傻,这里不做过多的介绍。原理就是在本数组中让比自己大的元素往后挪至自己的位置,自己往前挤。

package com.h3c.paixu;

public class 直接插入排序Demo {
	public static void main(String[] args) {
		// 1. 初始化一个无序数组
		int[] myArr = { 23, 35, 73, 27, 4, 77, 54, 84, 47, 56, 34, 32, 75, 32,
				31, 0, 99, 7, 54, 57 };

		myArr = 直接插入排序(myArr);

		for (int i : myArr) {
			System.out.print(i + " ");
		}

		System.out.println("");
	}

	public static int[] 直接插入排序(int[] myArr) {
		// 遍历数组
		for (int n = 0; n < myArr.length; n++) {
			//遍历已经排序了的数组
			for (int k = 0; k < n; k++) {
				//比较大小
				if (myArr[k] > myArr[n]) {
					int temp = myArr[n];
					for (int j = n; j > k; j--) {
						myArr[j] = myArr[j - 1];
					}
					myArr[k] = temp;
					break;
				}
			}
		}
		return myArr;
	}
}
相关文章
相关标签/搜索