lintcode之经典二分查找
2016-06-24 15:18
302 查看
1.问题:
2. Java解法
2.1 binarySearch.java
2.2 binarySearchTest.java
/**
* @main()
* @author xin_wang
*
*/
public class binarySearchTest {
public static void main(String[] args) {
// TODO Auto-generated method stub
binarySearch bs=new binarySearch();
int[] a={1,7};
int b=7;
System.out.println(bs.binarysearch(a,b));
}
}
3.输出:1
2. Java解法
2.1 binarySearch.java
/** * @Solution of Binary Search * @author xin_wang * */ public class binarySearch { public int binarysearch(int[] num,int target){ if(num==null||num.length==0){ return -1; } int start=0; int end=num.length-1; //Take care of Judge condition while(start+1<end){ int mid=start+(end-start)/2; if(num[mid]==target){ return mid; }else if(num[mid]>target){ end=mid; }else{ start=mid; } } //whileLoop condition is(start+1<end),if num contains 2 elements,while Loop break,so add following codes if(num[start]==target){ return start; } if(num[end]==target){ return end; } return -1; } }
2.2 binarySearchTest.java
/**
* @main()
* @author xin_wang
*
*/
public class binarySearchTest {
public static void main(String[] args) {
// TODO Auto-generated method stub
binarySearch bs=new binarySearch();
int[] a={1,7};
int b=7;
System.out.println(bs.binarysearch(a,b));
}
}
3.输出:1
相关文章推荐
- C++二分查找在搜索引擎多文档求交的应用分析
- C语言编程中实现二分查找的简单入门实例
- C#二分查找算法实例分析
- 二分查找算法在C/C++程序中的应用示例
- 在MySQL中实现二分查找的详细教程
- Java实现二分查找算法实例分析
- Python基于二分查找实现求整数平方根的方法
- python二分查找算法的递归实现方法
- Python二分查找详解
- 简介二分查找算法与相关的Python实现示例
- python二分查找算法的递归实现方法
- Python基于二分查找实现求整数平方根的方法
- 漫谈递归:二分查找算法的递归实现
- 二分查找
- [LeetCode] Find Minimum in Rotated Sorted Array
- 折半查找法
- "二分查找(Binary Search)"与"斐波那契查找(Fibonacci Search)"
- 二分查找
- C#版二分查找(代碼)
- 4495: Least Prime factor 找到最小质因子P的第N小正整数