91超碰碰碰碰久久久久久综合_超碰av人澡人澡人澡人澡人掠_国产黄大片在线观看画质优化_txt小说免费全本

溫馨提示×

溫馨提示×

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

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

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

远安县| 美姑县| 佛坪县| 葵青区| 维西| 财经| 门头沟区| 海宁市| 青田县| 常德市| 玉环县| 桦川县| 班玛县| 江山市| 聂拉木县| 忻州市| 宁津县| 白银市| 汤阴县| 醴陵市| 景德镇市| 永春县| 治多县| 靖远县| 错那县| 绥宁县| 铁岭县| 黄大仙区| 江达县| 固镇县| 洮南市| 广西| 鄂温| 鹤岗市| 保靖县| 东阳市| 建湖县| 鸡西市| 吉水县| 濮阳县| 延庆县|