二分搜索(JAVA & Python)
来源:互联网 发布:数据挖掘图片 编辑:程序博客网 时间:2024/06/06 03:59
二分查找的思想非常简单,这里就不过多介绍了,直接上代码
JAVA:
//递归实现public static int binary_Search(int arr[], int start, int end, int key) {int mid = (start + end) / 2;if (start > end) {return -1;}if (arr[mid] == key) {return mid;} else if (arr[mid] > key) {return binary_Search(arr, start, mid - 1, key);} else {return binary_Search(arr, mid + 1, end, key);}}
//循环实现private int binary(int []arr,int start,int end,int key) {while(start<=end){int mid = (start + end)>>1;if(arr[mid]==key) return mid;else if (arr[mid]>key) end = mid-1;else start = mid+1;}return -1;}
Python
def binary_search(arr,key):if (len(arr)==1): print("not found!!")return -1;mid = int(len(arr)/2)if(arr[mid]==key):print("find!!!")return mid;elif arr[mid]>key:return binary_search(arr[:mid], key)else: return binary_search(arr[mid:], key)
1 0
- 二分搜索(JAVA & Python)
- 二分查找算法(java)二分搜索
- 二分搜索算法(JAVA Code)
- java 二分搜索法
- java二分搜索算法
- 二分搜索(java)
- 搜索算法--二分查找(python)
- 二分搜索的java实现
- java实现二分搜索树
- 二分搜索(分治)
- poj2456(二分搜索)
- BinarySearch(二分搜索)
- 二分搜索(1)
- 二分搜索(2)
- 递归分治算法之二分搜索(Java版本)
- 递归与分治策略之二分搜索(Java版本)
- (基于Java)算法之二分搜索法
- 二分查找/二分搜索(binary_search)详解
- 重载运算符 前加后加
- HDU 1176 免费馅饼(DP)
- Android中Spannable的用法
- CANOpen服务数据对象报文
- APK瘦身之删除多余资源文件
- 二分搜索(JAVA & Python)
- FancyBox的使用技巧 (汇总)
- 设计模式之二:工厂方法模式
- python数字转字符串
- 【BZOJ】1303 [CQOI2009]中位数图 建模
- 2.里氏替换原则
- HoG特征以及SVM的配合
- Win7 64位下Python安装PIL图像处理库
- 蓝桥杯《操作格子》