二分查找以及冒泡排序
来源:互联网 发布:广东省网络医院在哪里 编辑:程序博客网 时间:2024/05/16 09:44
二分查找
- 描述:
我们在猜1-100的数字时,一般比较靠谱的猜测是先取一个中间值。比如50,如果被猜数小则开始猜1-49之间的数字,再猜数字是不是25,依次往复。二分查找法道理也大体相同。
//查找这个数字是否在数组里,在则返回下标位置,不在则返回-1public int binaryFind(int[] arr,int searchKey){ int ins=0; //用来存储数组的中间值 int low=0; //一个数组的开始下标 int pow=arr.length-1; 数组的结束下标 while(true){ ins=(low+pow)/2; if(arr[ins] == searchKey){ return ins; }else if(low > pow){ return -1; }else{ //被查找数小于中间数 if(arr[ins] > searchKey){ pow=ins-1; }else{ low=ins+1; } } }}
如果开始下标大于结束下标那肯定是不成立的,所以返回一个-1作为错误结果,如果成立,那么假如‘被猜测的数’小于中间数,那么数组范围缩小到开始下标和中间数之间,最后,结束下标得向中间数方向移动,用来缩小查找的范围。
冒泡排序
- 最基础的排序算法
public static void main(String[] args) { int[] arr=new int[]{1,2,15,222,45,60}; int temp=0; for(int i=0;i<arr.length-1;i++){ for(int j=0;j<arr.length-1;j++){ if(arr[j]>arr[j+1]){ temp=arr[j]; arr[j]=arr[j+1]; arr[j+1]=temp; } } } for(int num:arr){ System.out.println(num); //1,2,15,45,60,222 } }
0 0
- 二分查找以及冒泡排序
- 冒泡排序+二分查找
- 冒泡排序、二分查找
- 冒泡排序和二分查找
- 二分查找与冒泡排序
- 冒泡排序和二分查找
- 冒泡排序和二分查找
- 冒泡排序及二分查找
- java 冒泡排序二分查找
- 再看冒泡和选择排序以及折半查找(二分查找)
- PHP:冒泡排序、快速查找和二分查找的思路以及算法
- 冒泡排序,插入排序,二分查找
- 冒泡排序、选择排序、二分查找法
- 冒泡排序`交换排序·二分查找
- 选择排序 冒泡排序 二分查找
- 冒泡排序,快速排序,二分查找
- Java 冒泡排序,选择排序,二分查找
- JAVA冒泡排序,归并排序,二分查找
- [kuangbin带你飞]专题六 最小生成树 D POJ 2421
- 输入两个数,进行四则运算
- web前端-JavaScript 错误 -020
- 第八周OJ-求连续倒数和
- Maximal Square
- 二分查找以及冒泡排序
- 安卓开发之绘图
- 第八周OJ(2)分数序列
- 第八周 OJ 分数序列求和
- webx - requst context之session
- 第八周练习 分数序列的前n项和
- 覆盖表面(Overlay Surfaces)
- Notice: Use of undefined constant mysql_fetch_array - assumed 'mysql_fetch_array' in E:\wamp\wamp\w
- 第八周 oj