dim a(1 to 10)
private sub command1_click()
form_load
end sub
private sub command2_click()
p = 「」
for i = 1 to 9 '氣泡排序
for j = 1 to 10 - i
if a(j) < a(j + 1) then '相鄰兩個數比較
t = a(j): a(j) = a(j + 1): a(j + 1) = t '交換
end if
next j
next i
for i = 1 to 10
p = p & str(a(i)) & 「,」 『連線2個字串
next i
label2.caption = ltrim(left(p, len(p) - 1)) 『去掉前面空格的函式,展現最後效果
end sub
private sub form_load()
dim p as string
randomize
p = ""
for i = 1 to 10
dox = int(rnd * 91) + 10 '產生隨機數
yes = 0
for j = 1 to i - 1 '使產生的陣列元素互不相同
if x = a(j) then yes = 1: exit for '當yes = 1 時退出迴圈
基本思想:(將相鄰兩個數比較,小的調到前頭)
1)有n個數(存放在陣列a(n)中),第一趟將每相鄰兩個數比較,小的調到前頭,經n-1次兩兩相鄰比較後,最大的數已「沉底」,放在最後乙個位置,小數上公升「浮起」;
2)第二趟對餘下的n-1個數(最大的數已「沉底」)按上法比較,經n-2次兩兩相鄰比較後得次大的數;
3)依次類推,n個數共進行n-1趟比較,在第j趟中要進行n-j次兩兩比較。
之前的關注點主要放在氣泡排序是怎麼排的,卻忽略了什麼叫氣泡排序。
氣泡排序的定義:
氣泡排序(bubble sort,台灣譯為:泡沫排序或氣泡排序)是一種簡單的排序演算法。它重複地走訪過要排序的數列,一次比較兩個元素,如果他們的順序錯誤就把他們交換過來。走訪數列的工作是重複地進行直到沒有再需要交換,也就是說該數列已經排序完成。
這個演算法的名字由來是因為越大的元素會經由交換慢慢「浮」到數列的頂端,故名。
【c#版】
private void button1_click(object sender, eventargs e)
;int i, j;
int t;
for (i = 0; i <=9; i++)}}
for (i = 0; i <=9; i++)
氣泡排序 氣泡排序法
冒泡法是一種簡單的排序方法,它的實現非常簡單。首先對n個專案進行掃瞄,比較相領兩個專案的大小,若發現違背大小次序則進行互換,由此可以使n個專案中的最大者換到最後。然後對剩下的未排序好的專案再進行掃瞄,使它們的最大者換到表的最後。以此類推,直到將表全部排序好為止。這種排序方法,每遍掃瞄以後,都縮短了待...
排序 氣泡排序法
氣泡排序法,是最簡單的一種排序方法,從第乙個位置開始與相鄰位置比較,判斷是否需要交換位子。第一趟從第乙個位置開始,直到最後乙個位置,a n 1 確定最大 以公升序為例子 的數放在最後一位,a n 1 第二趟,繼續從第乙個位置開始,倒數第二位,a n 2 確定倒數第二大的數在倒數第二位a n 2 演算...
氣泡排序法
從小到大排序 int myarray new int 取長度最長的片語 冒泡法 for int j 1 jfor int i 0 i 如果 myarray i myarray i 1 則 myarray i 上浮一位 if myarray i myarray i 1 從大到小排序 int myarr...