nums =[2
,3,5
,9,8
,7,4
,6,1
]# 外層迴圈控制迴圈的次數(len(nums) - 1 )
for i in
range
(len
(nums -1)
:# 內層迴圈主要是將最大的數字冒泡到最後,且最後一次不用再比較
for j in
range
(len
(nums - i -1)
):# 數字大的往後移
if nums[j]
> nums[j +1]
:# 交換位置
nums[j]
, nums[j +1]
= nums[j +1]
, nums[j]
print
(nums)
nums =[2
,3,5
,9,8
,7,4
,6,1
]for i in
range
(len
(nums)-1
):# 指定最小索引
minindex = i
# i + 1 指從排序好的下乙個下標開始比較
for j in
range
(i +1,
len(nums)):
# 判斷是否是最小值
if nums[minindex]
> nums[j]
:# 把最小值的下標賦給 minindex
minindex = j
# 判斷完之後, 把最小值放在已經派好的後面
nums[i]
, nums[minindex]
= nums[minindex]
, nums[i]
print
(nums)
選擇排序,氣泡排序,雙向氣泡排序
氣泡排序和選擇排序是最基本的排序方式,要掌握。氣泡排序重複地走訪過要排序的數列,一次比較兩個元素,如果他們的順序錯誤就把他們交換過來。走訪數列的工作是重複地進行直到沒有再需要交換,也就是說該數列已經排序完成。選擇排序每一趟從待排序的 資料元素 中選出最小 或最大 的乙個元素,順序放在已排好序的數列的...
選擇排序,氣泡排序,雙向氣泡排序
首先是選擇排序,原理 1 找到未排序的數中最小的數放到最前面 2 陣列後移一位 3 重複上面兩部。void selectsorting if min a i swap b i b t 這個應該是我第乙個接觸到的排序演算法,結果第一次打排序水題直接上冒泡,直接接了一發tle 才知道有nlogn的演算法...
氣泡排序 選擇排序
這兩個排序的演算法 都是我從乙個叫太陽落雨的部落格上找來的,我放到我自己部落格,也只是為了把兩個排序演算法放一起方便,順便自己記憶,沒有抄襲的意思。一 演算法思想 氣泡排序便是指把陣列中的乙個數與其下乙個數進行比較,小的往前挪乙個位置,進行幾趟比較得到最終結果。而插入排序便是指先把第乙個數定為最小數...