package sort;
public class InsertionSort extends Example {
@Override
public void sort(Comparable[] a) {
// TODO Auto-generated method stub
int N = a.length;
for(int i = 1; i < N; i++){
// 位置i之前的数据都有序,
// 位置i之后的数据在本次内循环中不移动
// 把位置i上的数据,插入到i前已经有序的合适的位置上,
// 采用的方式(从位置i到0)是逐个交换,
// 这种方式可以改进。
for(int j = i; j > 0 && less(a[j],a[j-1]); j--){
exch(a, j, j-1);
}
}
}
public static void main(String[] args) {
String[] a = {"A","C","D","T","M","L"};
InsertionSort example = new InsertionSort();
example.sort(a);
example.show(a);
}
}
排序2-插入排序
最新推荐文章于 2022-07-31 17:55:24 发布