Python實現氣泡排序,選擇排序,插入排序

2021-07-17 04:36:25 字數 1546 閱讀 9357

1.python實現氣泡排序:

#方法1
array=[4,5,2,3,8,9,1]
def bubblesort(array):

sort=true

while sort:

sort=false

for i in range(len(array)-1):

if array[i]>array[i+1]:

temp=array[i+1]

array[i+1]=array[i]

array[i]=temp

sort=true

bubblesort(array)

print array

#方法2

def bubblesort(array):

for j in range(len(array)):

for i in range(len(array)-1):

if array[i]>array[i+1]:

temp=array[i+1]

array[i+1]=array[i]

array[i]=temp

bubblesort(array)

print array

2.python實現選擇排序:

#選擇排序:首先在未排序的序列中找到最小(大)元素,存放在排序序列的首位

#再從剩餘未排序元素中繼續選找最小(大)元素,然後放到已排序序列

#的末尾,依次類推

def selectsort(array):

for i in range(len(array)-1):

minindex=i

minvalue=array[i]

j=i+1

while jarray[j]:

minindex=j

minvalue=array[j]

j=j+1

tmp=array[i]

array[i]=array[minindex]

array[minindex]=tmp

array=[3,5,9,7,8]

selectsort(array)

print array

3插入排序

def insertsort(array):

i=1for i in range(len(array)):

minvalue=array[i]

j=i-1

while j>-1 and array[j]>minvalue:

array[j+1]=array[j]

j=j-1

array[j+1]=minvalue

i=i+1

array=[4,5,2,6,7,5,9]

insertsort(array)

print array

python實現快排 氣泡排序

1 快排 快排 從一堆雜亂的資料中挑選乙個基準值,將這些數字和基準值一一比較,大的放基準值的右邊,小的放左邊 實現思路 定義乙個函式,挑選列表的首個數字作為基準值,其他數字比基準值小的數字生成列表,同理,其他數字和基準值大的數字生成另乙個列表,再遞迴快排這兩個列表 def quick sort nu...

排序 選擇 冒泡 快排

簡單介紹三種常見的排序方法 選擇 冒泡 快排。從大到小排列 選擇排序是在所有資料中先選擇第乙個資料作為最大值,依次和後面的每乙個資料比較,如果比最大值大,替換最大值並且記住索引,遍歷結束後,通過索引把最大值和第乙個資料替換。後面的資料依次執行一遍,就可以得到從大到小排列的資料了。如下 4 void ...

python實現冒泡選擇插入快排

通過交換使相鄰的兩個數變成小數在前大數在後,這樣每次遍歷後,最大的數就 沉 到最後面了。重複n次即可以使陣列有序。def butttle arr for i in range len arr 1 exchange false for j in range len arr i 1 if arr j a...