package directinsertsort;
/**
* 直接选择排序
* @author Administrator
*
*/
public class DirectInsertSort
{
public void Sort(int[] array)
{
for(int i =0; i<array.length-1;i++)
{
int k = i; //哨兵的位置
for(int j = i+1;j<array.length;j++) //从未排序中直接选择一个最小的值
{
if(array[j] <= array[k])
{
k = j; //记录未排序区的最小值的索引
}
}
if(k!=i) //当存在一个这样的最小值时,将哨兵与未排序区进行交换
{
int temp = array[i];
array[i] = array[k];
array[k] = temp;
}
}
for(int i =0;i<array.length;i++)
{
System.out.print(" "+array[i]);
}
}
}
直接插入排序
最新推荐文章于 2020-04-29 12:19:52 发布