码迷,mamicode.com
首页 > 编程语言 > 详细

算法:插入排序

时间:2014-10-25 14:30:58      阅读:153      评论:0      收藏:0      [点我收藏+]

标签:blog   http   io   os   ar   for   sp   数据   div   

插入排序的算法分析:(未完)

http://blog.csdn.net/cjf_iceking/article/details/7916194

#include <iostream>
#include <string>
#include <stdio.h>
#include <string.h>
#include <algorithm>

using namespace std;

void InsertSort(int* pDataArray, int iDataNum)
{
    for (int i = 1; i < iDataNum; i++)    //从第2个数据开始插入
    {
        int j = 0;
        while (j < i && pDataArray[j] <= pDataArray[i])    //寻找插入的位置
            j++;

        if (j < i)    //i位置之前,有比pDataArray[i]大的数,则进行挪动和插入
        {
            int k = i;
            int temp = pDataArray[i];
            while (k > j)    //挪动位置
            {
                pDataArray[k] = pDataArray[k-1];
                k--;
            }
            pDataArray[k] = temp;    //插入
        }
    }
}

int main()
{
    int n;

    int a[200];
    int i;
    cin>>n;
    for(i=0; i<n; i++)
    {
        cin>>a[i];
    }
    InsertSort(a, n);

    for(i=0; i<n; i++)
    {
        if(i==n-1)
          cout<<a[i]<<endl;
          else
            cout<<a[i]<<" ";
    }
    return 0;
}

 

算法:插入排序

标签:blog   http   io   os   ar   for   sp   数据   div   

原文地址:http://www.cnblogs.com/yspworld/p/4049975.html

(0)
(0)
   
举报
评论 一句话评论(0
登录后才能评论!
© 2014 mamicode.com 版权所有  联系我们:gaon5@hotmail.com
迷上了代码!