距離上次寫部落格已經過去20天了,滷煮沒有偷懶,而是畢業找到了新的工作。
於是從帝都來到了夏天不冷、冬天也不冷的廈門,2000多公里的路程,不遠千里,公司的環境超級棒!哈哈!開心!
面試的時候也被問到了演算法內容,幸虧有所準備!因此準備寫下了,記下來。俗話說:好記性不如爛筆頭!有什麼不對的地方望大神們指正!
氣泡排序氣泡排序是交換排序的一種,另一種就是快速排序,後面的文章會介紹。我們先說說冒泡,見名思意就知道這種排序演算法如同乙個個的水泡慢慢的浮上來,這裡的水泡是指排序中的元素。它是一種穩定的排序演算法,當存在相等的元素時,不會改變相等元素原始存在的順序。
舉例:int arr =
第一趟結果:1,4,5,0,8,7,2,3,8,10
第二趟結果:1,4,0,5,7,2,3,8,8,10
第三趟結果:1,0,4,5,2,3,7,8,8,10
第四趟結果:0,1,4,2,3,5,7,8,8,10
第五趟結果:0,1,2,3,4,5,7,8,8,10
第六趟結果:0,1,2,3,4,5,7,8,8,10
由第五趟和第六趟的排序結果相同可知:氣泡排序的排序的次數跟被排序陣列的初始狀態有關係!!(劃重點)
/**
* 氣泡排序
* @param a 陣列名字
* @param length 陣列長度
*/public static void bubblesort(int a,int length)}}
}
交換排序之氣泡排序
大學學的演算法已經基本遺忘了,最近又重新撿起來好好鑽研一下,那麼就先從排序開始。先說交換排序中的氣泡排序,這個是比較基礎的乙個排序演算法。1 基本思想 在要排序的一組數中,對當前還未排好序的範圍內的全部數,自上而下對相鄰兩個數依次進行比較和調整,讓較大的數往下沉,較小的往上冒。即 每當兩相鄰的數比較...
交換排序之氣泡排序
氣泡排序演算法的基本思想是 假設待排序表長為n,從前往後 或從後往前 兩兩比較相鄰元素的值,若為逆序 即a i 1 a i 則交換它們,直到序列比較完。我們成它為一趟冒泡,結果將最大 最小 的元素交換到待排序列的最後乙個位置。下一趟冒泡時,前一趟確定的最大元素不再參與比較,待排序列減少乙個元素,每趟...
交換排序之氣泡排序
交換排序的主要思路就是在排序過程中,不斷比較待排序序列中相鄰的兩個資料,如果次序相反,則將其位置交換,從而達到排序的目的,氣泡排序和快速排序都屬於交換排序 下面我們介紹氣泡排序的基本原理 氣泡排序是一種比較簡單的排序演算法,基本思想就是對所有的相鄰的記錄的關鍵字進行比較,如果次序不對就將其交換,從而...