zoukankan      html  css  js  c++  java
  • [练手4]插入排序

    目      标      用C#实现插入排序

    思      想    

    将n个元素的数列分为已有序和无序两个部分,如下所示:

      {,{a2,a3,a4,…,an}}

      {{a1(1),a2(1)},{a3(1),a4(1) …,an(1)}}

      …

      {{a1(n-1),a2(n-1) ,…}, {an(n-1)}}

      每次处理就是将无序数列的第一个元素与有序数列的元素从后往前逐个进行比较,找出插入位置,将该元素插入到有序数列的合适位置中。

    实现
            public void Sort(int[] intArray)
            {
                int intTemp;
                int j;

                //默认第一个已排序
                for (int i = 1; i < intArray.Length; i++)
                {
                    intTemp = intArray[i];
                    j = i;

                    while (j > 0 && intArray[j - 1] > intTemp)
                    {
                        //如果当前值大于intTemp(有序前的最大值),则依次判断前面的序列插入到指定位置中
                        intArray[j] = intArray[j - 1];
                        j--;
                    }
                    intArray[j] = intTemp;
                }
            }

    代码下载  插入排序代码

  • 相关阅读:
    Object的原型拷贝-create、assign、getPrototypeOf 方法的结合
    配intelliJ IDEA 过程
    浅谈HTTP中Get与Post的区别
    apply、call、bind区别、用法
    引用类型与原始类型的区别
    html5标签集结1
    指针作为参数传递
    指针与指针变量
    函数模板
    内置函数
  • 原文地址:https://www.cnblogs.com/eugenewu0808/p/DO4.html
Copyright © 2011-2022 走看看