午夜精品久久久久久久99热-午夜精品久久久久-午夜精品成人毛片-午夜黄网站-国产日韩精品欧美一区视频-国产日韩精品欧美一区色

冒泡排序流程圖(小學生都能學會的冒泡排序)

冒泡排序流程圖(小學生都能學會的冒泡排序)

磨高原 2025-04-14 科技 67 次瀏覽 0個評論

01

故事起源

幼兒園放學,小朋友們集合,需要先從低到高排隊,應該怎么排呢?

小學生都能學會的冒泡排序

02

開始行動

小K身高180,是班里最高的,自然得往后排啦。小K先和身后的小B比較,然后和小B交換。

小學生都能學會的冒泡排序

小K接著和身后的小D比較,然后和小D交換。

小學生都能學會的冒泡排序

經過和4個小朋友交換位置,小K終于找到自己的位置啦。

小學生都能學會的冒泡排序

上面的過程其實就是冒泡排序的核心思想了。

03

冒泡排序

為描述方便,用下面的數組模擬小朋友的交換過程。

小學生都能學會的冒泡排序

核心思想(升序):從首位置開始,依次比較前后兩個數,如果前面的數比后面的數大,就交換兩個數。這樣第1輪結束后,最大的數就會移動到最后的位置。對剩余元素重復執行N-1次,整個數組有序。因為像空氣上浮到水面,最大的元素會慢慢浮到最后,所以冒泡因此得名。

3.1

第1輪

執行完成后,最大的元素歸位。

小學生都能學會的冒泡排序

3.2

第2輪

第2輪接著對前面剩余的N-1個元素重復上面步驟,第2大的元素歸位。

小學生都能學會的冒泡排序

3.3

第3輪

第3輪對前面剩余的N-2個元素重復上面步驟,第3大的元素歸位。

小學生都能學會的冒泡排序

總共執行N-1次操作,所有元素歸位。

3.4

代碼實現

for (int i = 0; i < n - 1; ++i) {    for (int j = 0; j < n - i - 1; ++j) {        if (a[j] > a[j + 1]) {            swap(a[j], a[j + 1]);        }    }}

04

問題及優化

4.1

迭代輪次優化

如果原數組為如下情況,那么在執行完第1輪后,整個數組已經有序,后面的輪次沒必要執行,可以針對這種情況做一次優化改進。改進點1:如果某一輪沒有發生過交換,說明數組已經有序,那么以后也不會發生交換,此時可以終止迭代。

小學生都能學會的冒泡排序

代碼實現

for (int i = 0; i < n - 1; ++i) {    // flag標記是否有交換    bool flag = true;    for (int j = 0; j < n - i - 1; ++j) {        if (a[j] > a[j + 1]) {            swap(a[j], a[j + 1]);            flag = false;        }    }    if (flag) {        break;    }}

4.2

掃描范圍優化

如果為以下情況,我們會發現最后的6和8所處的位置和最終排序完成的位置一樣,說明過程中他們的位置不會發生變化。

小學生都能學會的冒泡排序

上一輪最后交換的位置,在下一輪時,此位置后面的數也不會再發生交換。

小學生都能學會的冒泡排序

改進點2:記錄每一次最后發生交換的位置,下一輪只需要掃描到此位置的前一個即可。

代碼實現

// 記錄最后交換的位置int position = 0;int len = n - 1;for (int i = 0; i < n - 1; ++i) {    // flag標記是否有交換    bool flag = true;    for (int j = 0; j < len; ++j) {        if (a[j] > a[j + 1]) {            swap(a[j], a[j + 1]);            flag = false;            position = j;        }    }    len = position;    if (flag) {        break;    }}

05

總結

冒泡排序是比較簡單的一種排序算法,核心思想就是比較相鄰的兩個數,但效率比較低所以可做一些優化。時間復雜度為O(N^2),數據規模較小時可采用,但數據過大時就不建議采用冒泡了。

來源:小K算法

作者 :小K

原標題:圖解算法:冒泡排序

編輯:hxg、yrLewis

轉載請注明來自夕逆IT,本文標題:《冒泡排序流程圖(小學生都能學會的冒泡排序)》

每一天,每一秒,你所做的決定都會改變你的人生!

發表評論

快捷回復:

評論列表 (暫無評論,67人圍觀)參與討論

還沒有評論,來說兩句吧...

主站蜘蛛池模板: 色五夜婷婷 | 亚洲成熟人网站 | 一区二区在线观看视频 | 草比电影 | 婷婷爱五月天 | 国产欧美精品系列在线播放 | 不卡午夜 | 在线亚洲精品视频 | 色婷丁香 | 亚洲十欧美十日韩十国产 | 伊人色婷婷 | 久久免费视频6 | 在线观看你懂的视频 | 日本一区二区三区在线观看视频 | 久久精品国产这里是免费 | 中文国产成人精品久久一 | 国产网站免费在线观看 | 五月婷六月婷婷 | 日本免费一区二区视频 | 性强烈的欧美三级三p视频 一级电影免费 | 中文字幕乱码一二三四区 | 激情文学综合丁香 | 久久久久久久综合 | 亚洲第一页在线播放 | 九九电影在线免费看 | 五月激情婷婷丁香 | 亚洲人成电影院 | 五月天激情啪啪 | 婷婷丁香在线视频 | 日韩精品视频在线免费观看 | 亚洲二区在线视频 | 尤物国午夜精品福利网站 | 亚洲一区二区精品推荐 | 亚洲福利精品一区二区三区 | 九九视频免费精品视频免费 | 婷婷综合社区 | 久热只有精品 | 深爱激情婷婷 | 精品久久久久久中文字幕欧美 | 亚洲国产精品综合久久20 | 国产精品视频免费视频 |