冒泡排序是一種計(jì)算機(jī)科學(xué)領(lǐng)域的較簡(jiǎn)單的排序算法。它重復(fù)地走訪(fǎng)過(guò)要排序的元素列,依次比較兩個(gè)相鄰的元素,如果順序(如從大到小、首字母從Z到A)錯(cuò)誤就把他們交換過(guò)來(lái)。走訪(fǎng)元素的工作是重復(fù)地進(jìn)行,直到?jīng)]有相鄰元素需要交換,也就是說(shuō)該元素列已經(jīng)排序完成。這個(gè)算法的名字由來(lái)是因?yàn)樵叫〉脑貢?huì)經(jīng)由交換慢慢“浮”到數(shù)列的頂端(升序或降序排列),就如同碳酸飲料中二氧化碳的氣泡最終會(huì)上浮到頂端一樣,故名“冒泡排序”。
冒泡排序算法的原理是什么?
1.比較相鄰的元素。如果第一個(gè)比第二個(gè)大,就交換他們兩個(gè)。
2.對(duì)每一對(duì)相鄰元素做同樣的工作,從開(kāi)始第一對(duì)到結(jié)尾的最后一對(duì)。在這一點(diǎn),最后的元素應(yīng)該會(huì)是最大的數(shù)。
3.針對(duì)所有的元素重復(fù)以上的步驟,除了最后一個(gè)。
4.持續(xù)每次對(duì)越來(lái)越少的元素重復(fù)上面的步驟,直到?jīng)]有任何一對(duì)數(shù)字需要比較。
冒泡排序常規(guī)算法步驟是什么?
(1)第一趟第一次比較:首先比較第一和第二個(gè)數(shù),將小數(shù)放在前面,將大數(shù)放在后面。
(2)比較第2和第3個(gè)數(shù),將小數(shù)放在前面,大數(shù)放在后面。
(3)重復(fù)步驟(2),直到比較到最后的兩個(gè)數(shù),將小數(shù)放在前面,大數(shù)放在后面,第一趟排序完成
(4)在第一趟比較完成后,最后一個(gè)元素一定是數(shù)組中最大的一個(gè)數(shù),所以在比較第二趟的時(shí)候,最后一個(gè)數(shù)是不參加比較的。
(5)在第二趟比較完成后,倒數(shù)第二個(gè)數(shù)也一定是數(shù)組中倒數(shù)第二大數(shù),所以在第三趟的比較中,最后兩個(gè)數(shù)是不參與比較的。
(6)依次類(lèi)推,每一趟比較次數(shù)減少依次。
關(guān)鍵詞: 冒泡排序算法的原理是什么 冒泡排序常規(guī)算法步驟是什么 java簡(jiǎn)單冒泡排序代碼 冒泡排序的基本過(guò)程