首页 > 代码库 > 算法:插入排序

算法:插入排序

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

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;}

 

算法:插入排序