2.1.26

上次更新:2019-04-17
发现了题解错误/代码缺陷/排版问题?请点这里:如何:提交反馈

解答

直接针对特殊值的话显然会快很多。

代码

直接把泛型改成 int 即可。

namespace _2._1._26
{
    /// <summary>
    /// 插入排序类。
    /// </summary>
    public class InsertionSort
    {
        /// <summary>
        /// 默认构造函数。
        /// </summary>
        public InsertionSort() { }

        /// <summary>
        /// 利用插入排序将数组按升序排序。
        /// </summary>
        /// <param name="a">需要排序的数组。</param>
        public void Sort(int[] a)
        {
            int n = a.Length;
            for (int i = 0; i < n; i++)
            {
                for (int j = i; j > 0 && a[j] < a[j - 1]; --j)
                {
                    int t = a[j];
                    a[j] = a[j - 1];
                    a[j - 1] = t;
                }
            }
        }
    }
}

另请参阅

Sort 库

上一题 下一题