回覆列表
  • 1 # 加油小猴紙

    所謂氣泡排序法,就是對一組數字進行從大到小或者從小到大排序的一種演算法。

    1、具體方法是,相鄰數值兩兩交換。從第一個數值開始,如果相鄰兩個數的排列順序與我們的期望不同,則將兩個數的位置進行交換(對調);如果其與我們的期望一致,則不用交換。重複這樣的過程,一直到最後沒有數值需要交換,則排序完成。具體情況如下圖所示:

    2、為了實現效果,我們得先定義一組待排序的數列以及各個變數。具體情況如下圖:

    3、演算法的實現,具體情況如圖:

    4、執行結果顯示。具體情況如圖:

    5、按照上面的程式,在第五趟(i=5)起泡時,計算機不僅要對“1,5,6,4”兩兩進行比較並排序,還要對“7,8,9,13”進行兩兩比較並排序,而“7,8,9,13”在第四趟起泡時就已經排序好了,所以再進行比較的話,就顯得非常多餘。圖示如下:

    6、在上面程式的基礎上進行最佳化。具體情況如圖所示:

    7、最佳化後的輸出結果。如圖所示:

  • 2 # 夢圩水邊紅葉1

    相信學過C語言的朋友都知道,在C語言中,常用的排序演算法有:氣泡排序、快速排序、插入排序、選擇排序、希爾排序、堆排序以及歸併排序等等。就算沒有用過,相信大家也有所耳聞。在這裡呢,小編主要是想和大家一起來探討探討C語言的氣泡排序法,大家有什麼好的建議可以在評論裡給我留言,希望我們相互學習,共同進步。

    1、所謂氣泡排序法,就是對一組數字進行從大到小或者從小到大排序的一種演算法。具體方法是,相鄰數值兩兩交換。從第一個數值開始,如果相鄰兩個數的排列順序與我們的期望不同,則將兩個數的位置進行交換(對調);如果其與我們的期望一致,則不用交換。重複這樣的過程,一直到最後沒有數值需要交換,則排序完成。一般地,如果有N個數需要排序,則需要進行(N-1)趟起泡,我們以從小到大排序為例來看一下,具體情況如下圖所示:

    2、首先,為了實現效果,我們得先定義一組待排序的數列以及各個變數。具體情況如下圖:

    3、演算法的實現,具體情況如圖:

    4、執行結果顯示。具體情況如圖:

    5、按照上面的程式,在第五趟(i=5)起泡時,計算機不僅要對“1,5,6,4”兩兩進行比較並排序,還要對“7,8,9,13”進行兩兩比較並排序,而“7,8,9,13”在第四趟起泡時就已經排序好了,所以再進行比較的話,就顯得非常多餘。圖示如下:

    6、在上面程式的基礎上進行最佳化。具體情況如圖所示:

    7、最佳化後的輸出結果。如圖所示:

  • 中秋節和大豐收的關聯?
  • 使命召喚4作弊碼怎麼用?