欢迎来到多呀多啊的博客
Zou-Wang
多呀多啊
世界大雨磅沱,万物苟且而活,无人为你背负更多

C#插入排序算法

原理:

1、第一个元素可以看做是已经排序好的小数组,第二个元素和这个小数组比较,放到合适的位置,组成新的已排序的小组数。
2、第三个元素在和前面组成的新的小数组比较,决定排在什么位置,如此循环,直到结束

   public static void insertatesort()
        {
            int[] array = new int[6] { 56, 45, 85, 13, 85, 46 };  //定义一个数组


            for (int i = 1; i < array.Length; i++)   //外层循环,先将数组第二个元素作为基数,再将数组第三的元素作为基数
            { 
                int t = array[i];    //将一个默认的基数赋值给t,这里首先是默认下标为0的数字为基数
                int j = i;          //记录当前基数下标
                while ((j > 0) && (array[j - 1] > t))  //判断前一个元素是否大于当前基数,如果大于则满足条件,执行循环体
                {
                    array[j] = array[j - 1];//交换顺序    如果大于的话将前一个元素放在当前基数的位置
                    --j;            //下标前移
                }
                //跳出循环,说明交换完成
                array[j] = t;  //将基数插入到下标所代表的位置
            }

            foreach (int item in array) {

                Console.Write(item+"    ");

            }

        }

 

posted @ 2020-03-26 18:43  多呀多啊  阅读(146)  评论(0编辑  收藏  举报
Live2D
看板娘