#include#include int main(){ int n,s=-1,m,i,j,b=0,t1,t2,g,mid; scanf("%d",&n); int *p; p=(int *)malloc(sizeof(int)*(n+1)); for(i=0;i scanf("%d",&p[i]); } scanf("%d",&m); for(i=0,j=n-1;i mid=(i+j)/2; if(m j=mid-1; } if(m>p[mid]){ i=mid+1; } else if(m==p[mid]){ s=mid; b=1; break; } } printf("%dn",s); if(b==0){ if(m>p[n-1]){ p[n]=m; } for(i=0;i
if(m t1=p[i]; p[i]=m; } for(j=i+1;j<=n;j++){ if(t1>p[j]){ t2=t1; t1=p[j]; p[j]=t2; } } break; } } for(i=0;i
printf("%d",p[i]); } printf("n"); for(i=0,j=n;i<=j;){ int mid=(i+j)/2; if(m j=mid-1; } if(m>p[mid]){ i=mid+1; } else if(m==p[mid]){ g=mid; break; } } printf("%dn",g); return 0; }
我这个代码里包含一个插入排序,做的可能有点麻烦。



