氣泡排序是一種極其簡單的排序演算法,也是我所學的第乙個排序演算法。它重複地走訪過要排序的元素,一次比較相鄰兩個元素,如果他們的順序錯誤就把他們調換過來,直到沒有元素再需要交換,排序完成。這個演算法的名字由來是因為越小(或越大)的元素會經由交換慢慢「浮」到數列的頂端。
氣泡排序演算法的運作如下:
比較相鄰的元素,如果前乙個比後乙個大,就把它們兩個調換位置。
對每一對相鄰元素作同樣的工作,從開始第一對到結尾的最後一對。這步做完後,最後的元素會是最大的數。
針對所有的元素重複以上的步驟,除了最後乙個。
持續每次對越來越少的元素重複上面的步驟,直到沒有任何一對數字需要比較。
由於它的簡潔,氣泡排序通常被用來對於程式設計入門的學生介紹演算法的概念。氣泡排序的**如下:
public static void maopao()}}
foreach (var item in arr)
}
氣泡排序詳解(從小到大)
實現 將數列中的第乙個元素和第二個元素比較數值大小,若第乙個元素比第二個元素大,則交換位置。然後再將第二個元素和第三個元素比較數值大小,第三個元素和第四個元素比較 依次不斷地比較,交換。不斷迴圈比較,直到不再發生交換,這就表明排序已完成,此時得到就是乙個有序數列。簡單來說就是不斷迴圈比較數列中相鄰元...
選擇 插入 氣泡排序(從小到大)
package com.wangzhu.main public class main work new int work new int work new int public static void work int arr 插入排序 從小到大 在要排序的一組數中,假設前面 n 1 n 2 個數已...
氣泡排序 從小到大排序
li 1,5,2,44,66,564,33,76,378 def bubble sort li 獲取列表的長度 n len li 遍歷列表長度減1次 for i in range 1,n 建立乙個變數,用來機率冒泡,是否有資料交換位置 status false 每次遍歷獲取第乙個元素,依次和後面的元...