冒泡排序(Bubble Sort),是一種電腦科學領域的較簡單的排序演算法。
它重複地走訪過要排序的元素列,依次比較兩個相鄰的元素,如果他們的順序(如從大到小、首字母從A到Z)錯誤就把他們交換過來。走訪元素的工作是重複地進行直到沒有相鄰元素需要交換,也就是說該元素列已經排序完成。
如果你想了解更多關於java的知識,可以點選:java教學
這個演算法的名字由來是因為越大的元素會經由交換慢慢「浮」到數列的頂端(升序或降序排列),就如同碳酸飲料中二氧化碳的氣泡最終會上浮到頂端一樣,故名「冒泡排序」。
冒泡排序演算法的原理如下:
1、比較相鄰的元素。如果第一個比第二個大,就交換他們兩個。
2、對每一對相鄰元素做同樣的工作,從開始第一對到結尾的最後一對。在這一點,最後的元素應該會是最大的數字。
3、針對所有的元素重複以上的步驟,除了最後一個。
4、持續每次對越來越少的元素重複上面的步驟,直到沒有任何一對數字需要比較。
public class Sort { public static void main(String[] args){ int[] arr = {6,3,2,1,7}; for(int i = 0;i<arr.length-1;i++){//外层循环n-1 for(int j = 0;j<arr.length-i-1;j++){//内层循环n-i-1 if(arr[j]>arr[j+1]){//从第一个开始,往后两两比较大小,如果前面的比后面的大,交换位置 int tmp = arr[j]; arr[j] = arr[j+1]; arr[j+1] = tmp; } } } System.out.println(Arrays.toString(arr)); } }
以上是編寫函數對數組中的資料進行從小到大的排序的詳細內容。更多資訊請關注PHP中文網其他相關文章!