几个python小程序
来源:互联网 发布:南通java培训班 编辑:程序博客网 时间:2024/05/18 19:19
第一个列表展开:
def muli(lst): for item1 in lst: if isinstance(item1,list): for y in muli(item1): yield y else: yield item1 a = [1,2,[3,4],[5,[6,[7,[8,[9,10]]]]]]print list(muli(a))
二分法:
def binarySearch(l, t): low, high = 0, len(l) - 1 while low < high: #print low, high mid = (low + high) / 2 if l[mid] > t: high = mid elif l[mid] < t: low = mid + 1 else: return mid return low if l[low] == t else False if __name__ == '__main__': l = [1, 4, 12, 45, 66, 99, 120, 444] print binarySearch(l, 1)快排:
def qsort(lst): if lst==[]: return [] else: mid = lst[0] little = qsort([x for x in lst[1:] if x < mid]) bigger = qsort([x for x in lst[1:] if x >= mid]) return little+[mid]+bigger if __name__=='__main__': lst=[5,6,78,9,0,-1,2,3,-65,12] print(qsort(lst))
插排:
if __name__ == '__main__': l = [4,1,9,13,34,26,10,7,4]def insert_sort(l): for i in range(len(l)): min_index = i for j in range(i+1,len(l)): if l[min_index] > l[j]: min_index = j l[i],l[min_index] = l[min_index],l[i] print(str(l)) print("result: " + str(l))insert_sort(l)print("insert_sort success!!!")
0 0
- 几个python小程序
- python几个小程序
- Python的几个小程序
- Python的几个文件操作小程序
- python学习—几个简单小程序
- 写了几个有关operaminimod的python小程序
- 使用python写程序时遇到的几个小问题
- 几个小程序
- 几个小程序
- 几个小程序
- 几个iphone小程序
- 几个小程序
- 几个小程序。
- 几个vba小程序
- 几个java小程序
- 几个PHP 小程序
- python几个小技巧
- io的几个小程序
- SPFA详解
- log4j详解
- Error-Prone Refaster templates
- Redis笔记
- 外部.so库放入 Qt for Android 项目
- 几个python小程序
- Hadoop集群模式下运行Mapreduce任务
- Lintcode x的n次幂
- Zookeeper入门学习(一)--Zookeeper的特点
- 最全的Android源码目录结构详解
- Fragment详细介绍
- 2017湖南多校第五场 neerc 2013 解题报告
- hdu 1049
- Android动画机制(一)