C#实现插入排序法

private int[] test_Insertion(int[] list) //插入排序 传入数组 3, 6, 2, 1, 9, 5, 4, 7
{
for(int i =;i<list.Length;i++) //首选取出第一个数(3)作为一个有序的数组,然后遍历传入数组"3"之后的每一个数
{
int j ;
int key = list[i];
for (j = i - ; j >= ; j--) //因为取出来的数是一个有序数组,排序是从小往大递增的,所以插入新的数字的时候只需要
{
if(list[j] < key) //==>倒序比较,假如比数组的最后一个数字大,前面的就不需要再比较了,这里就是最先比较的
{
break; //最大数就是list[j]
}
else
{
list[j + ] = list[j]; //假如待插入数字不比最大的一个数字大,就依次跟前面的数字比较,同时把比较过的数字
} //位置依次右移
}
list[j + ] = key; //最后找到合适的位置插入数组
}
return list;
}
上一篇:SourceTree 免登录跳过初始设置


下一篇:Nginx配置proxy_pass转发的/路径问题