插入排序

来源:互联网 发布:php session memcached 编辑:程序博客网 时间:2024/06/06 05:37

一、插入排序特点:


每步将一个待排序的纪录,按其关键码值的大小插入前面已经排序的文件中适当位置上,直到全部插入完为止。

时间复杂度:O(n2)

稳定性:稳定


二、插入排序图形




三、插入排序的代码:


交换式


  for (int i = 2; i <= 10; i++)            {                for (int j = i - 1; j >= 1; j--)                {                    if (a[j + 1] < a[j])                    {                        int temp = a[j + 1];                        a[j + 1] = a[j];                        a[j] = temp;                    }                    else                    {                        break;                    }                }            }


移步式


      for (int i = 2; i <= 10; i++)            {                position = i;                int temp = a[i];                for (int j = i - 1; j >= 1; j--)                {                    if (temp  < a[j])                    {                        a[j + 1] = a[j];                        position = j;                    }                    else                    {                        break; //跳出一层循环                    }                }                a[position] =temp ;            }



原创粉丝点击