冒泡排序python实现
开始学习python,格式神马的都是浮云,直接上数据结构的算法。毕竟读代码学习最快1 接受输入的py代码,以后的算法的输入import这个文件
#!/usr/bin/env python
#coding=utf-8
# stdinInput.py
intsortArrays=[]
def stdinInput():
sortArray=raw_input("please input num array that you want sort(use , to split every num) :")
sortArrays=sortArray.split(',')
for num in sortArrays:
intnum=-1
try:
intnum=int(num)
except:
print "input num array error, error element was given an default value -1"
intsortArrays.append(intnum)
冒泡排序:(本实现是从最后往前冒泡,可以选择是冒大的泡还是小的泡)
#!/usr/bin/env python
#coding=utf-8
#BubbleSort.py
#user can choose sort style: desc(1) or asc(2)
import sys
import stdinInput
def bubblesort(sortarray,style):
sortarraylen=len(sortarray)
whileNum=0
if style==1:
while whileNum < sortarraylen-1:
for num in xrange(sortarraylen-1,whileNum,-1):
if sortarray<sortarray:
sortarray,sortarray=sortarray,sortarray
whileNum=whileNum+1
else:
while whileNum < sortarraylen-1:
for num in xrange(sortarraylen-1,whileNum,-1):
if sortarray>sortarray:
sortarray,sortarray=sortarray,sortarray
whileNum=whileNum+1
if __name__=='__main__':
style=1
try:
style=int(sys.argv)
except:
print "input argv error, use default desc sort"
stdinInput.stdinInput()
bubblesort(stdinInput.intsortArrays,style)
print stdinInput.intsortArrays
页:
[1]