日韩无码专区无码一级三级片|91人人爱网站中日韩无码电影|厨房大战丰满熟妇|AV高清无码在线免费观看|另类AV日韩少妇熟女|中文日本大黄一级黄色片|色情在线视频免费|亚洲成人特黄a片|黄片wwwav色图欧美|欧亚乱色一区二区三区

RELATEED CONSULTING
相關(guān)咨詢
選擇下列產(chǎn)品馬上在線溝通
服務(wù)時(shí)間:8:30-17:00
你可能遇到了下面的問(wèn)題
關(guān)閉右側(cè)工具欄

新聞中心

這里有您想知道的互聯(lián)網(wǎng)營(yíng)銷解決方案
創(chuàng)新互聯(lián)Python教程:python歸并排序的基本思路

基本思路

襄陽(yáng)ssl適用于網(wǎng)站、小程序/APP、API接口等需要進(jìn)行數(shù)據(jù)傳輸應(yīng)用場(chǎng)景,ssl證書(shū)未來(lái)市場(chǎng)廣闊!成為成都創(chuàng)新互聯(lián)公司的ssl證書(shū)銷售渠道,可以享受市場(chǎng)價(jià)格4-6折優(yōu)惠!如果有意向歡迎電話聯(lián)系或者加微信:13518219792(備注:SSL證書(shū)合作)期待與您的合作!

歸納排序是采用分治法的非常典型的應(yīng)用。

1、先歸還分解組,然后合并組。基本構(gòu)想是將數(shù)組分解到最小,然后合并兩個(gè)有序數(shù)組。

2、基本構(gòu)想是比較兩個(gè)數(shù)組的最前面的數(shù)量,誰(shuí)小就先取誰(shuí),取后取相應(yīng)的指針后移。

然后進(jìn)行比較,直到一個(gè)組是空的,最后復(fù)制另一個(gè)組的剩馀部分即可。

實(shí)例

# 歸并排序
def merge_sort(alist):
    '''歸并排序'''
    n = len(alist)
    if n <= 1:
        return alist
    else:
        mid = n // 2
        # left 表示采用歸并排序后形成的有序的新的列表
        left_li = merge_sort(alist[:mid])
 
        # right 表示采用歸并排序后形成的有序的新的列表
        right_li = merge_sort(alist[mid:])
 
        # 將兩個(gè)有序的子序列合并成一個(gè)新的整體
        # merge(left,right)
        left_pointer,right_pointer = 0,0
        result = []
        while left_pointer < len(left_li) and right_pointer < len(right_li):
            if left_li[left_pointer] <= right_li[right_pointer]:
                result.append(left_li[left_pointer])
                left_pointer += 1
            else:
                result.append(right_li[right_pointer])
                right_pointer += 1
 
        result += left_li[left_pointer:]
        result += right_li[right_pointer:]
        return result
 
if __name__ == '__main__':
    alist = [54, 26, 93, 17, 77, 31, 44, 55, 20]
    print(alist)
    sorted_alist = merge_sort(alist)
    print(sorted_alist)

以上就是python歸并排序的基本思路,希望對(duì)大家有所幫助。更多Python學(xué)習(xí)指路:創(chuàng)新互聯(lián)Python教程

本文教程操作環(huán)境:windows7系統(tǒng)、Python 3.9.1,DELL G3電腦。


本文標(biāo)題:創(chuàng)新互聯(lián)Python教程:python歸并排序的基本思路
URL分享:http://www.5511xx.com/article/djispos.html