python 二分法例子及冒泡排序
2024-08-23 15:24:10
#!/usr/bin/env python
#-*- coding:utf-8 -*- def binary_search(source_data,find_nu):
mid = len(source_data)/2
if len(source_data) >= 1:
if source_data[mid] > find_nu:
print 'data in left of %s' % source_data[mid]
binary_search(source_data[:mid],find_nu)
elif source_data[mid] < find_nu:
print 'data in right of %s' % source_data[mid]
binary_search(source_data[mid:],find_nu)
else:
print 'found_nu is',source_data[mid] else:
print 'find_nu not found' if __name__ == '__main__':
data = range(1,6000000)
binary_search(data,0)
冒泡排序:
data = [10,4,33,21,54,3,8,11,5,22,2,1,17,13,6] print("before sort:",data) previous = data[0]
for j in range(len(data)):
tmp = 0
for i in range(len(data)-1):
if data[i] > data[i+1]:
tmp=data[i]
data[i] = data[i+1]
data[i+1] = tmp
print(data) print("after sort:",data)
最新文章
- AspnetIdentitySample
- 利用TaskCompletionSource将EAP转换成TAP
- PHP中的闭包和匿名函数
- HTML5 javascript修改canvas的大小
- php文件上传的例子
- 查看mysql库大小,表大小,索引大小
- 【HTML XHTML CSS基础教程(第6版)】笔记之HTML XHTML笔记(1~6章)
- 比较详细的利用虚拟机对SD卡FAT32+EXT4+Ext4分区图解教程
- C语言头文件的作用
- MEMS微加工技术
- 使用HAXM加速Android虚拟机
- thinkphp3.2自定义常量
- Android数据存储:Shared Preferences
- POJ 1631 Bridging signals (LIS:最长上升子序列)
- 查看Nginx、PHP、Apache和MySQL的编译参数
- C# 表达式树学习笔记
- 曲苑杂坛--DML操作中如何处理那些未提交的数据
- GoLang学习之数据类型
- ArrayList源码解读(jdk1.8)
- TLV5620参考电压的问题