插入排序

#include "stdafx.h"
#include <list>
#include <iostream>
#include <string>
#include <memory>
#include <vector>
#include <map>
#include <assert.h>

using namespace std;

#define BUFSIZ 100

int (&strToIntArr(string s,int &len))[BUFSIZ]
{
    int arr[BUFSIZ];
    int idx=0;

    char *pch = strtok(const_cast<char*>(s.c_str()),", ");
    while(pch!=NULL){
        arr[idx++] = atoi(pch);
        pch = strtok(NULL,", ");
    }

    len=idx;
    return arr;
}


void insertSort(int (&arr)[BUFSIZ],int len)
{
    if(len<2){
        return;
    }

    int key,i;

    for(int j=1;j<len;j++){
        key=arr[j];
        i=j-1;
        while(i>-1 && arr[i]>key){
            arr[i+1]=arr[i];
            i=i-1;
        }

        arr[i+1]=key;
    }
}

int _tmain(int argc, _TCHAR* argv[])
{
    string input;
    cin>>input;

    int arr_len;
    int (&arr)[BUFSIZ] = strToIntArr(input,arr_len);

    insertSort(arr,arr_len);

    for(int i=0;i<arr_len;i++){
        cout<<arr[i]<<endl;
    }

    system("pause");
    return 0;
}
相信世界是平的
谨记四个字“修身养性”
大江东去浪淘尽英雄,再牛B的人物最后也是一掊土
向善不是目的,而是抚慰心灵,更多的感受幸福,感谢别人给你行善的机会
相信老子的话:万物生于有,有生于无,一切的道理都源于一个无法证明的假设
我是好是坏就自然而然的摆在那里,并不会因为别人的评价而改变什么,我也不需要别人用一张纸来说明我什么,世间最难得的是自由



支持大额赞助:
原文地址:https://www.cnblogs.com/sky-view/p/5095298.html