首页 > 其他 > 详细

BInsertSort

时间:2015-06-28 12:45:44      阅读:189      评论:0      收藏:0      [点我收藏+]
#include<stdio.h>
#include<algorithm>
using namespace std;
int a[10000]={-1,4,5,2,1,3,7};
int n=5;
void Is(){
    for(int i=2;i<=n;i++){
        if(a[i]<a[i-1]){
            a[0]=a[i];
            int l=1,h=i-1;
            while(l <= h){
                int m = (l+h)/2;
                if(a[0]<a[m]) h=m-1;
                else l=m+1;
            }
            a[i]=a[i-1];
            int j=0;
            for( j=i-1;j>=h+1;j--)
                a[j+1]=a[j];
            a[h+1]=a[0];
        }
    }
}
int main()
{

    Is();
    for(int i=1;i<=5;i++) printf("%d ",a[i]);
    return 0;
}

BInsertSort

原文:http://blog.csdn.net/a197p/article/details/46669977

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