1.氣泡排序
①定義:氣泡排序(bubble sort),是一種電腦科學領域的較簡單的排序演算法。它重複地走訪過要排序的元素列,依次比較兩個相鄰的元素,如果他們的順序(如從大到小、首字母從a到z)錯誤就把他們交換過來。走訪元素的工作是重複地進行直到沒有相鄰元素需要交換,也就是說該元素已經排序完成。這個演算法的名字由來是因為越大的元素會經由交換慢慢「浮」到數列的頂端(公升序或降序排列),就如同碳酸飲料中二氧化碳的氣泡最終會上浮到頂端一樣,故名「氣泡排序」。
②時間複雜度、空間複雜度和穩定性
時間複雜度:平均複雜度o(n2)、最好複雜度o(n)、最壞複雜度o(n2)
空間複雜度:o(1)
穩定性:穩定
③**:
public class bubblesort ;
for (int i = 0; i < arr.length; i++) }}
print(arr);
}public static void swap(int arr,int i, int j)
public static void print(int arr)
資料結構與演算法之氣泡排序
一 氣泡排序的定義及其理解 氣泡排序是一種交換排序,它的基本思路是 兩兩比較相鄰記錄的關鍵字,如果反序則交換,直到沒有反序的記錄為止。氣泡排序其實很容易理解,顧名思義,我們會想到氣泡。就像水底下的魚兒嘴巴裡吐出的氣泡,越鄰近水平面上的氣泡是越大的。那如何用氣泡排序的方法對大小不一的氣泡進行排序呢?氣...
資料結構與演算法之氣泡排序
氣泡排序作為演算法的入門程式,就好比程式語言裡面的hello world。核心思想就是將相鄰的兩個元素進行比較,如果順序錯誤就進行交換。給定一組資料 9,7,3,5,8,2,1。從第乙個數字9開始,將他與前面的數字7進行比較,大於7,然後兩個就交換位置,然後在用9去跟3做比較,大於3,同樣交換位置,...
資料結構與演算法之氣泡排序
勵志成為程式設計師的小白又來啦!這次要分享的是演算法中的幾種常用排序。首先這次我們要分享的是最經典的氣泡排序 氣泡排序 它重複地走訪過要排序的元素列,依次比較兩個相鄰的元素,如果他們的順序 如從大到小 首字母從a到z 錯誤就把他們交換過來。走訪元素的工作是重複地進行直到沒有相鄰元素需要交換,也就是說...