• 分治算法的典型应用——合并排序

    #include<stdio.h> void merge(int a[],int b[],int low,int mid,int high) { int h,i,j,k; mid=(low+high)/2; h=low;i=low;j=mid+1; while(h<=mid&&j<=high) { if(a[h]<=a[j]) {b[i]=a[h];h=h+1;} else {b[i]=a[j];j=j+1;} i=i+1; }

    0
    126
    880B
    2012-05-18
    9
  • c++二分查找

    #include<iostream> using namespace std; int search(int a[],int key,int low,int high) { int mid; while(low<high) { mid=(low+high)/2; if(key<a[mid]){high=mid-1;continue;} if(key>a[mid]){low=mid+1;continue;} if(key==a[mid])return mid;break; } if(low>high)cout<<"对不起,没有这个数!"<<endl; }

    0
    1264
    560B
    2012-05-08
    50
上传资源赚积分or赚钱