您的位置:首页 > 理论基础 > 数据结构算法

【数据结构】选择排序 二分查找 C++

2019-05-31 20:04 211 查看

选择排序

#include<iostream>
using namespace std;
void SelectSort(int *A,const int n);

int main(){
int A[]={1,3,2,5,7,2,13,5,6,98};
SelectSort(A,10);
for(int i=0;i<10;i++){
cout<<A[i]<<endl;
}
return 0;
}
void SelectSort(int *A,const int n){

for(int i=0;i<n;i++){
int min=i;
for(int j=i+1;j<n;j++){
if(A[j]<A[min]){
min=j;
}
}
swap(A[i],A[min]);
}
}

二分查找

#include<iostream>
using namespace std;
int Binarysearch(int* A,int x,int n);
int main(){
int A[]={1,2,3,4,5,6,7,8,9,10};
cout<<Binarysearch(A,1,10)<<endl;

return 0;
}

int Binarysearch(int* A,int x,int n){
int low=0;
int high=n-1;
int mid;
while(low<=high){
mid=(low+high)/2;
cout<<"当前对比的下标为"<<mid<<endl;
if(x==A[mid]){
return mid;
}
else if (x>A[mid]){
low=mid+1;
}
else if(x<A[mid]){
high=mid-1;
}
}

}
内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
标签: 
相关文章推荐