Javascript 氣泡排序

2021-08-26 10:08:48 字數 836 閱讀 6113

最基本的題目:乙個陣列,未知長度,按從小到大的順序進行排列;現在用基本的氣泡排序方法進行排序!

一種思路是先把大的往後排,陣列呈逐步減少的狀態,排序的過程為:

i=0時,j=0,j<5,j++ 8

3 6 1 -2 3

86 1 -2

3 681 -2

3 6 18-2

3 6 1 -28

i=1時,j=0,j<4,j++

3 6 1 -28

361 -28

3 16-28

3 1 -26

8i=2時,j=0,j<3,j++

31 -26 8

13-26 8

1 -23

6 8i=3時,j=0,j<2,j++

1-23

6 8-21

3 6 8

i=4時,j=0,j<1,j++

-213 6 8

-213 6 8

具體的實現**是:

var arr = [8,3,6,1,-2]; var temp; var count=0; for(var i=0; i另外一種思路是把小的元素往前排,再比較的時候就比較剩下的元素就可以了,i=0先把-2給換到最前邊,i=1把1網簽拽,陣列就剩下8 3 6了 ,陣列就越來越小了!

var arr = [8,3,6,1,-2]; var temp; var count=0; for(var i=0; i= i; j--) //alert("i:"+i+"j:"+j); } } document.write(arr); document.write("總共迴圈了"+count);//9當然這兩種思路都是冒泡法,5個不重複的元素,迴圈了9次

氣泡排序的JavaScript實現

氣泡排序是排序演算法中最基礎的一種排序。其基本思路是 將相鄰的兩個元素進行比較,順序相反則進行交換。每次遍歷將最大值或者最小值 浮 到序列最右端或者左端。js 實現 var bubblesort function arr if flag return arr 程式中flag用來標記該序列是否已經為有...

簡明演算法 氣泡排序 javascript描述

懶惰了很久,人有點生鏽,所以寫個演算法系列讓自己腦筋活躍起來。所有範例一律從小到大排序 氣泡排序 給定陣列 var list 54,26,93,17,77,31,44,88,55,20 演算法描述 將第乙個元素與第二個元素對比,此時第乙個元素比第二個元素大,交換他們,這樣較大的元素就位於第二個位置了...

氣泡排序 排序 氣泡排序

既然寫了計組思來想去便打算把資料結構也寫下來,寫的時候總是發現看的時候無法發現的問題,受益良多。交換排序的基本思想 exchange until sorted 順序,分支,迴圈 注意偽 的熟悉 下面介紹兩種交換演算法 首先進行聯想,用乙個圖進行輔助聯想 水冒泡過程 頂部是陣列的begin,底部理解為...