直接插入排序

public class StraightInsertionSort

    {

        public static void Sort(int[] array)

        {

            for (int i = 1; i < array.Length; i++)

            {

                if (array[i] < array[i - 1])

                {

                    int temp = array[i];

                    int j = 0;

                    for (j = i - 1; j >= 0 && temp < array[j]; j--)

                    {

                        array[j + 1] = array[j];

                    }

                    array[j + 1] = temp;

                }

            }

        }

    }

直接插入排序(straight insertion sort)的做法是:每次从无序表中取出第一个元素,把它插入到有序表的合适位置,使有序表仍然有序。这个类似于玩扑克牌时整理扑克牌一样。直接插入排序属于稳定的排序,最坏时间复杂度为O(n²)。 

你可能感兴趣的:(插入排序)