【数据结构】选择排序 二分查找 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; } } }
相关文章推荐
- Java数据结构-数组(二分查找、冒泡排序、选择排序、插入排序)
- 【数据结构】选择排序和二分查找
- C++数据结构 排序 二分 插入 冒泡 基数 归并 直选 快排 希尔 堆排序
- 经典算法:二分查找、插入排序、选择排序、冒泡排序
- 数组(冒泡排序,选择排序,二分查找,最大最小值,反转,录入互不相同的数字)
- C++数据结构--选择排序
- java选择排序和二分查找
- 数据结构 - 只需选择排序(simple selection sort) 详细说明 和 代码(C++)
- 递归的定义以及递归的示例(计算阶乘、计算斐波那契数、递归二分查找、回文串递归方法解决、汉诺塔问题、递归选择排序问题)
- 冒泡排序和选择排序二分查找代码实现
- C++数据结构-简单选择排序
- 一维数组 冒泡排序 shell 排序 二分查找 C++
- java的 最大值 选择排序 冒泡排序 二分查找
- 数组 获取最值(最大值 最小值)选择排序 冒泡排序 快速排序 半查找(二分查找) 十进制转其他进制法
- 各种排序方法(冒泡,快速,插入,选择),二分查找
- 17_常用API_第3天(包装类、System、Math、Arrays、冒泡排序、选择排序、二分查找)
- java实现的选择排序、冒泡排序、二分查找
- 再看冒泡和选择排序以及折半查找(二分查找)
- 黑马程序员——冒泡排序、选择排序、二分查找的实例运用分析
- C++代码,数据结构-内部排序-选择排序-堆排序