氣泡排序(線性描述)
快速排序(線性描述)
建設中… 總結
這是排序演算法家族中最簡單的演算法,自信的面對他吧。
讓我們開始吧
氣泡排序的原理即為遍歷整個陣列,每當遇到後乙個數比前乙個數字更小的情況便交換兩者的值。
由此看來最壞的情況便是類似a[6]=;的情況。我們來分析一下執行過程。
首先發現5<6,交換,a[6]=;,迴圈一次後a[6]=;我們發現一次迴圈後最大的數一定在陣列的最後方,所以不需要第二次迴圈只需要遍歷前5個數字,即n-i個。
於是內層迴圈只需要n-i次即可。
第二次迴圈a[6]=;
~三a[6]=;
~四a[6]=;
~五a[6]=;
完成。o(n2)
證明:建設中。
#include
using
namespace std;
intmain()
雖然氣泡排序相當簡單,但是很好的理解它會使你在接下來學習插入排序與希爾排序中更加輕鬆。
python描述氣泡排序
氣泡排序 bubble sort 是一種基於交換的排序演算法。重複地遍歷數列,一次比較兩個元素,如果它們的順序錯誤就將其交換。氣泡排序的具體原理如下 比較相鄰的元素。如果第乙個比第二個大,就交換二者 對每一對相鄰元素做同樣的操作,從開始第一對到結尾的最後一對。這步操作後,最後的元素即為最大的數。針對...
氣泡排序 python描述
原文 氣泡排序,有時也稱為下沉排序,是一種簡單的排序演算法,它反覆遍歷要排序的列表,比較沒對相鄰的專案,如果它們的順序不滿足條件則交換它們。重複遍歷列表,知道不需要交換,這時列表就是已排序的。其核心思想是 兩兩比較相鄰記錄的關鍵字,如果反序則交換,直到沒有反序記錄為止。比較相鄰的元素。如果第乙個比第...
簡明演算法 氣泡排序 javascript描述
懶惰了很久,人有點生鏽,所以寫個演算法系列讓自己腦筋活躍起來。所有範例一律從小到大排序 氣泡排序 給定陣列 var list 54,26,93,17,77,31,44,88,55,20 演算法描述 將第乙個元素與第二個元素對比,此時第乙個元素比第二個元素大,交換他們,這樣較大的元素就位於第二個位置了...