首页 > 技术文章 > 排序(二):插入排序

ABC-wangyuhan 2021-05-13 18:49 原文

一、方法封装

 /// <summary>
        /// 插入排序
        /// </summary>
        /// <param name="array"></param>
        /// <returns></returns>
        public static int[] InsertSort(int[] array)
        {
            for (var i = 1; i < array.Length; i++)
            {
                // key 为需要移动的元素,默认为是数组中的第一个元素
                int key=array[i];

                //j 为
                int j=i-1;
                while(j>=0&&key<array[j])
                {
                    array[j+1] = array[j];
                    j--;
                }

                array[j+1] =key;
            }

            return array;

        }

二、方法调用

class Program
    {
        static void Main(string[] args)
        {
       int[] insertArr = { 10, 30, 5, 110 };
            var newInsert = SortBy.InsertSort(insertArr);
            System.Console.WriteLine(string.Join(",", newInsert));


        }
    }

三、效果展示

 

 

推荐阅读