Python 递归函数选择排序和二分查找
来源:互联网 发布:军事网络的安全保护 编辑:程序博客网 时间:2024/05/16 15:10
def sort(lst): shortHelper(lst,0,len(lst)-1)def shortHelper(lst,low,high): if low < high: indexOfMin = low min = lst[low] for i in range(low+1,high+1): if lst[i] < min: min = lst[i] indexOfMin = i lst[indexOfMin] = lst[low] lst[low] = min shortHelper(lst,low+1,high)def recursiveBinarySearch(lst,key): return recursiveBinarySearchHepler(lst,key,0,len(lst)-1)def recursiveBinarySearchHepler(lst,key,low,high): if low > high: return -low - 1 mid = (low+high) // 2 if lst[mid] == key: return mid elif lst[mid] < key: return recursiveBinarySearchHepler(lst,key,mid+1,high) else: return recursiveBinarySearchHepler(lst,key,low,mid-1)if __name__ == '__main__': lst = [3,4,5,1,2,6,2] sort(lst) print lst[recursiveBinarySearch(lst,1)]
0 0
- Python 递归函数选择排序和二分查找
- C语言:编写查找和排序函数(二分查找,冒泡排序,选择排序法)
- java选择排序和二分查找
- day12选择排序和二分查找
- 选择排序、冒泡排序和二分查找C/C++
- 冒泡排序和选择排序二分查找代码实现
- 递归-C-二分查找+排序
- Python中的递归函数及二分查找算法如何使用?
- 二分查找和递归的二分查找
- 二分递归查找和非递归查找
- python算法和数据结构笔记--递归--二分查找
- 二分查找和二分排序
- 二分排序和查找
- 排序和二分查找
- 冒泡排序、选择排序、二分查找法
- 选择排序 冒泡排序 二分查找
- Java 冒泡排序,选择排序,二分查找
- 冒泡排序,选择排序,二分查找小结
- 蓝桥杯特殊回文数
- windows下Markdownpad的简单用法
- java 一点浅薄的东西 分享1
- 机器学习中的数学(3)-模型组合(Model Combining)之Boosting与Gradient Boosting
- linux运行级别
- Python 递归函数选择排序和二分查找
- Linux内核工程导论——网络:Filter(LSF、BPF、eBPF)
- 排序算法
- Linux线程机制总结
- Linux信号
- python中列表的常用方法
- zzuoj 10423: 强盗归来 (prim)
- 鱼亦飞的Android成长之路
- sar