Home >Backend Development >Python Tutorial >Bubble sorting python implementation
Start learning python. The format is all cloudy, so you can directly learn the algorithm of data structure. After all, reading code is the fastest way to learn
1 Accept the input py code, and import this file for the input of the subsequent algorithm
#!/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)
Bubble sorting: (This implementation bubbles from the end forward, you can choose whether to make larger bubbles or smaller bubbles bubbles)
#!/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[num-1]<sortarray[num]: sortarray[num-1],sortarray[num]=sortarray[num],sortarray[num-1] whileNum=whileNum+1 else: while whileNum < sortarraylen-1: for num in xrange(sortarraylen-1,whileNum,-1): if sortarray[num-1]>sortarray[num]: sortarray[num-1],sortarray[num]=sortarray[num],sortarray[num-1] whileNum=whileNum+1 if __name__=='__main__': style=1 try: style=int(sys.argv[1]) except: print "input argv error, use default desc sort" stdinInput.stdinInput() bubblesort(stdinInput.intsortArrays,style) print stdinInput.intsortArrays