for迴圈實現陣列的氣泡排序

2021-10-04 04:35:02 字數 711 閱讀 7964

實現思路:通過for迴圈排序比較出乙個最大值,通過多次迴圈直到完成從小到大的排序

請看下面演示:

實現過程:

從起始資料單元開始比較,第一次迴圈,會選擇出乙個最大值,放在當前陣列所有資料單元的最後,之後的每次迴圈中,都會比較出乙個本次迴圈的最大值,放在當前參與比較的所有資料單元的最後,之前已經比較選出的資料單元就不會再參與比較。

**實現:

var arr =[7

,6,5

,4,3

,2,1

];// 定義乙個陣列 ,陣列的索引下標預設是 0 開始向後依次排序

// 當前陣列的length值就等於該陣列的長度 就是7

for(

var i =

0; i <

(arr.length-1)

;i++)}

}

優化:1, 單次迴圈,最後乙個單元,通過倒數第二個單元,參與比較

最後乙個單元,就不參與單次迴圈

2, 之前比較出的最大值,不再參與下一次的比較

3, n個單元,只要迴圈比較n-1次,最後就乙個單元時,不要再迴圈比較

for迴圈實現氣泡排序原理

演算法思想 氣泡排序屬於一種典型的交換排序。交換排序顧名思義就是通過元素的兩兩比較,判斷是否符合要求,如過不符合就交換位置來達到排序的目的。氣泡排序名字的由來就是因為在交換過程中,類似水冒泡,小 大 的元素經過不斷的交換由水底慢慢的浮到水的頂端。氣泡排序的思想就是利用的比較交換,利用迴圈將第 i 小...

氣泡排序實現陣列中的公升序排序

遍歷一次陣列,實現查詢到陣列中的最大值 var arr 1,5,9,69,14,34,2,56,3,5,87,1 vartmp for var i 1 i 以上 是找出了陣列中的最大值並且將該值放到arr.length 1的位置 分析 第1輪比較,要比較11次,迴圈條件為第2次比較,要比較10次,迴...

氣泡排序之java陣列實現

氣泡排序的演算法思想 比較相鄰兩個元素的關鍵字值,如果反序,則交換。若按照公升序排序,每一趟將掃瞄資料序列的最大值到最後位置。即最多掃瞄n 1次,每次確定乙個值。下面是乙個陣列的氣泡排序實現 氣泡排序是穩定的 從小到大氣泡排序 氣泡排序時間效率在o n 和o n n 之間 public static...