亚洲激情专区-91九色丨porny丨老师-久久久久久久女国产乱让韩-国产精品午夜小视频观看

溫馨提示×

溫馨提示×

您好,登錄后才能下訂單哦!

密碼登錄×
登錄注冊×
其他方式登錄
點擊 登錄注冊 即表示同意《億速云用戶服務條款》

Python中怎么實現合并排序

發布時間:2021-06-18 17:43:25 來源:億速云 閱讀:501 作者:Leah 欄目:大數據

本篇文章為大家展示了Python中怎么實現合并排序,內容簡明扼要并且容易理解,絕對能使你眼前一亮,通過這篇文章的詳細介紹希望你能有所收獲。

1、歸并排序原理
     歸并排序采用分而治之的原理:

     一、將一個序列從中間位置分成兩個序列;

     二、在將這兩個子序列按照第一步繼續二分下去;

     三、直到所有子序列的長度都為1,也就是不可以再二分截止。這時候再兩兩合并成一個有序序列即可。

2、一圖以明之   

Python中怎么實現合并排序


3、Python代碼
def merge(a, b):
    c = []
    h = j = 0
    while j < len(a) and h < len(b):
        if a[j] < b[h]:
            c.append(a[j])
            j += 1
        else:
            c.append(b[h])
            h += 1

    if j == len(a):
        for i in b[h:]:
            c.append(i)
    else:
        for i in a[j:]:
            c.append(i)

    return c


def merge_sort(lists):
    if len(lists) <= 1:
        return lists
    middle = len(lists)//2
    left = merge_sort(lists[:middle])
    right = merge_sort(lists[middle:])
    return merge(left, right)


if __name__ == '__main__':
    a = [14, 2, 34, 43, 21, 19]
    print (merge_sort(a))

上述內容就是Python中怎么實現合并排序,你們學到知識或技能了嗎?如果還想學到更多技能或者豐富自己的知識儲備,歡迎關注億速云行業資訊頻道。

向AI問一下細節

免責聲明:本站發布的內容(圖片、視頻和文字)以原創、轉載和分享為主,文章觀點不代表本網站立場,如果涉及侵權請聯系站長郵箱:is@yisu.com進行舉報,并提供相關證據,一經查實,將立刻刪除涉嫌侵權內容。

AI

泽库县| 满洲里市| 遂溪县| 疏附县| 丽江市| 普定县| 澄城县| 瑞安市| 阿坝| 开封市| 乌审旗| 丹巴县| 永泰县| 喀喇| 沈阳市| 七台河市| 乐业县| 阳春市| 山阳县| 香格里拉县| 牙克石市| 二连浩特市| 北海市| 岑溪市| 康定县| 东方市| 屏东市| 武宁县| 外汇| 化隆| 新源县| 泰顺县| 威宁| 辽中县| 栾城县| 土默特左旗| 邳州市| 迁安市| 吉安市| 安龙县| 霍山县|