<ruby id="bdb3f"></ruby>

    <p id="bdb3f"><cite id="bdb3f"></cite></p>

      <p id="bdb3f"><cite id="bdb3f"><th id="bdb3f"></th></cite></p><p id="bdb3f"></p>
        <p id="bdb3f"><cite id="bdb3f"></cite></p>

          <pre id="bdb3f"></pre>
          <pre id="bdb3f"><del id="bdb3f"><thead id="bdb3f"></thead></del></pre>

          <ruby id="bdb3f"><mark id="bdb3f"></mark></ruby><ruby id="bdb3f"></ruby>
          <pre id="bdb3f"><pre id="bdb3f"><mark id="bdb3f"></mark></pre></pre><output id="bdb3f"></output><p id="bdb3f"></p><p id="bdb3f"></p>

          <pre id="bdb3f"><del id="bdb3f"><progress id="bdb3f"></progress></del></pre>

                <ruby id="bdb3f"></ruby>

                ThinkChat2.0新版上線,更智能更精彩,支持會話、畫圖、視頻、閱讀、搜索等,送10W Token,即刻開啟你的AI之旅 廣告
                # 冒泡排序 ## 示意圖 ![冒泡排序示意圖](https://raw.githubusercontent.com/liuzhen153/play-algorithm-python/master/images/bubble_sort.png) ## 運作步驟 1. 比較相鄰的元素,如果第一個比第二個大,就交換他們兩個。 2. 對每一對相鄰元素做同樣的工作,從開始第一對到結尾的最后一對。 3. 針對所有的元素重復以上的步驟,除了最后一個。 4. 持續每次對越來越少的元素重復上面的步驟,直到沒有任何一對數字需要比較。 ## 助記碼 ``` i∈[0,N-1) //循環N-1遍 j∈[0,N-1-i) //每遍循環要處理的無序部分 swap(j,j+1) //兩兩排序(升序/降序) ``` ## 算法分析 * 最壞時間復雜度 O(n^2) * 最優時間復雜度 O(n) * 平均時間復雜度 O(n^2) ## 實現 ```Python def bubble_sort(list=[]): '''Python中的冒泡排序算法實現 :param list: 需要排序的數字列表 :return: 排序結果 ''' list_len = len(list) for i in range(list_len - 1): # 剩一個元素時不需要再比較 swap = False # 記錄是否 for j in range(list_len - 1 - i): # 每次都需要兩兩對比前面未排序完成的元素 if list[j + 1] < list[j]: # 比較相鄰元素 list[j], list[j + 1], swap = list[j + 1], list[j], True # 根據大小調換元素位置 if not swap: break # 如果內循環沒有大小交換,則代表已排序完成,不必再往下進行 return list ``` ## 測試 ``` $ python bubble_sort.py 冒泡排序>>> 請輸入需要排序的數字,用英文半角逗號隔開,直接回車則使用默認數據: 需要排序的數字為: 8,-5,10,6,-23,15,45 排序結果: -23,-5,6,8,10,15,45 ``` # 代碼庫地址 [https://github.com/liuzhen153/play-algorithm-python](https://github.com/liuzhen153/play-algorithm-python)
                  <ruby id="bdb3f"></ruby>

                  <p id="bdb3f"><cite id="bdb3f"></cite></p>

                    <p id="bdb3f"><cite id="bdb3f"><th id="bdb3f"></th></cite></p><p id="bdb3f"></p>
                      <p id="bdb3f"><cite id="bdb3f"></cite></p>

                        <pre id="bdb3f"></pre>
                        <pre id="bdb3f"><del id="bdb3f"><thead id="bdb3f"></thead></del></pre>

                        <ruby id="bdb3f"><mark id="bdb3f"></mark></ruby><ruby id="bdb3f"></ruby>
                        <pre id="bdb3f"><pre id="bdb3f"><mark id="bdb3f"></mark></pre></pre><output id="bdb3f"></output><p id="bdb3f"></p><p id="bdb3f"></p>

                        <pre id="bdb3f"><del id="bdb3f"><progress id="bdb3f"></progress></del></pre>

                              <ruby id="bdb3f"></ruby>

                              哎呀哎呀视频在线观看