首页 > 编程语言 > 详细

插入排序

时间:2015-08-05 18:09:15      阅读:294      评论:0      收藏:0      [点我收藏+]

一、理解

  像扑克那样,一张一张地摸牌然后排序。

二、算法流程(升序)

  (1)从第二张牌开始,将其取出,赋给一个临时变量temp

      将temp和前一个A[K]对比,若temp小于A[K],则将A[K]往后移动一位,再和A[K-1]对比...直到对比完第一位或者找到一个比temp小的数

      将temp赋给比它小的数的后面

三、代码

  

/*
插入排序法
*/
#include <iostream>
using namespace std;

int main()
{
    int A[6] = { 31, 41, 59, 26, 41, 58 };
    int j = 0;//j代表要对比的牌
    int temp=0;
    for (int i = 1; i <6; i++)//i代表摸的那张牌
    {
        temp = A[i];
        j = i - 1;
        while (temp < A[j]&&j>=0)
        {
            A[j+1] = A[j];
            j--;
        }
        A[j + 1] = temp;
    }
    for (int i = 0; i < 6; i++)
    {
        cout << A[i] << ",";
    }
    return 0;
}

 

  

插入排序

原文:http://www.cnblogs.com/Wanggcong/p/4705336.html

(0)
(0)
   
举报
评论 一句话评论(0
关于我们 - 联系我们 - 留言反馈 - 联系我们:wmxa8@hotmail.com
© 2014 bubuko.com 版权所有
打开技术之扣,分享程序人生!