随机化选择算法
来源:互联网 发布:淘宝代销好吗 编辑:程序博客网 时间:2024/04/29 18:21
算法设计与分析这本书里面提到的随机选择算法,原来的实现是将数组分成三等份,考虑了一下,发现在实现的时候,不是很方便,因此采用的是快排的partition算法。
#!/usr/bin/pythonimport randomnumber1=[1,2,3,10,5,6,7,8,9]def randomselect(number,low,high,k):t = random.randint(low,high)number[t],number[high] = number[high],number[t];ix = partition(number,low,high)tt = ix - low + 1;if ( tt == k):return number[ix]elif(tt < k):return randomselect(number,ix+1,high,k-tt)else: return randomselect(number,low,ix-1,k)print x;def partition(number,start,end):i = start;for j in range(start,end):if(number[j] < number[end]):number[i],number[j] = number[j],number[i]i += 1number[i],number[end] = number[end],number[i]return iprint randomselect(number1,0,len(number1)-1,4)
0 0
- 随机化选择算法
- 随机化快速次序选择算法
- 随机化算法
- 随机化算法
- 【随机化算法】
- 随机化算法
- 随机化算法
- 随机化算法
- 随机化算法
- 随机化算法
- 随机化算法
- 随机化算法
- 随机化算法
- 随机化算法
- 随机化算法-数值随机化算法
- 随机化算法-----遗传算法
- 0044算法笔记——【随机化算法】舍伍德(Sherwood)算法和线性时间选择问题
- 0044算法笔记——【随机化算法】舍伍德(Sherwood)算法和线性时间选择问题
- java集合类之TreeMap
- linux网络编程
- Android 快速开发框架XUtils
- android常用工具类 通过域名获取ip
- CodeSign error: code signing is required for product type 'Unit Test Bundle' in SDK 'iOS 8.0'
- 随机化选择算法
- 中国如何拿下印度高铁市场?
- 重置未Root状态命令
- Qt5 新特性
- 使用Fragment完成Tab选项卡-Android Fragment应用实战
- Spring学习之使用标签来标记资源(@Component、@Repository、 @Service和@Controller)以及使用方式(包含如何在jsp中使用)
- 双系统下卸载ubuntu
- 2PL - 两阶段锁
- 富士通南大笔试(2014.10.12)