//直接插入排序
// 这里使用记录索引,并移箱子的形式进行。
public class StraightInsertionSort {
public void straightInsertionSort(int[] data, int left, int right) {
if (left < 0 || right > data.length - 1 || left >= right) {
return;
}
int temp,i,j;
// 第一个默认是排好序的,从第二个开始
for (i = left + 1; i <= right; i++) {
temp = data[i];
// 倒回去往前找,对比一个,就把它移后面去,就是往前一个接一个地插队,一直插到正确位置。
for (j = i - 1; j >= left && data[j] > temp; j--) {
data[j + 1] = data[j];
}
data[j+1] = temp;
}
}
}
八大排序算法——直接插入排序(一)
最新推荐文章于 2024-07-17 09:11:28 发布