1、對元素進行兩次遍歷
2、第一次遍歷所有元素
3、第二次判斷當前元素是否比之後的元素大,如果大則交換位置,否則不動
氣泡排序是一種常用的排序演算法。從思路理解上比插入排序、快排、歸併排序都要簡單。就是做兩次巢狀迴圈,一旦發現前面的數比後面的數大,就交換位置。像氣泡從水裡公升上來一樣,越往上氣泡越大。
氣泡排序是對元素做兩次巢狀的迴圈,顯而易見,時間複雜度是o(n^2)。
public class main
bubblesortii(arr);
system.out.println(arrays.tostring(arr));
}/**
* 常見氣泡排序
** @param arr
*/private static void bubblesort(int arr) }}
}/**
* 氣泡排序優化
** @param arr
*/private static void bubblesortii(int arr) }}
}}
氣泡排序知多少
氣泡排序只會操作相鄰的兩個資料。每次冒泡操作都會對相鄰的兩個元素進行比較,看是否滿足大小關係要求。如果不滿足就讓它倆互換。一次冒泡會讓至少乙個元素移動到它應該在的位置,重複 n 次,就完成了 n 個資料的排序工作。1.比較相鄰的兩個元素。如果第乙個比第二個大,就交換他們兩個。2.對每一對相鄰元素作同...
排序知多少 堆排序詳解
堆是具有下列特性的完全二叉樹 每個節點的值都大於或等於其左右孩子的節點的值,成為大頂堆,或者每個節點的值都小於或等於其左右孩子節點的值,成為小頂堆。在選擇到最小記錄同時,並根據比較結果對其他記錄做出相應調整。這樣的排序整體效率非常高。堆排序 heap sort 就是利用堆進行排序的方法。他的基本思想...
排序詳解 氣泡排序
氣泡排序 bubble sort 是一種電腦科學領域的較簡單的排序演算法。它重複地走訪過要排序的數列,一次比較兩個元素,如果他們的順序錯誤就把他們交換過來。走訪數列的工作是重複地進行直到沒有再需要交換,也就是說該數列已經排序完成。這個演算法的名字由來是因為越大的元素會經由交換慢慢 浮 到數列的頂端,...