题目描述:给出一个乱序的数组,将其从小到大排序
思路:数组第一个数字默认有序,从第二个数字开始考虑,逆序进行比较
如果前面一个数字比当前数字大,则进行交换
重复此步骤直到当前下标为0结束
代码示例:
package sort;
public class Insertion_sort {
public static void main(String[] args) {
int a [] = {4,1,6,3,5,67,6788,1,8788,5};
insertion_sort(a);
}
private static void insertion_sort(int[] a) {
int len = a.length;
for(int i=1;i<len;i++){
int temp = a[i];
for(int j=i;j>0&&a[j-1]>temp;j--){
a[j] = a[j-1];
a[j-1] = temp;
}
}
for (int i = 0; i < len; i++) {
System.out.println(a[i]);
}
}
}