栏目分类:
子分类:
返回
名师互学网用户登录
快速导航关闭
当前搜索
当前分类
子分类
实用工具
热门搜索
名师互学网 > IT > 软件开发 > 后端开发 > Python

python合并有序数组

Python 更新时间: 发布时间: IT归档 最新发布 模块sitemap 名妆网 法律咨询 聚返吧 英语巴士网 伯小乐 网商动力

python合并有序数组

(升序)有序数组1长度为m+n,含m个数,有序数组2 长度为n,含n个数。要求直接在数组1上完成合并
方法:从两数组尾部开始比较,比较后大的值插入数组1尾部

class Solution:
    def merge(self, nums1: List[int], m: int, nums2: List[int], n: int) -> None:
        """
        Do not return anything, modify nums1 in-place instead.
        """
        if m==0:
            nums1[:] = nums2[:]
            return
        if n==0:
            return
        k = m+n 
        while(m*n):
            count = 0
            while(m*n and nums2[n-1]>=nums1[m-1]):
                n -= 1
                count += 1
            if(count):
                nums1[k-count:k] = nums2[n:n+count]
            nums1[k-count-1] = nums1[m-1]
            m -= 1
            k = k-count-1

        if(n):
            nums1[0:n] = nums2[0:n]
        
        return
转载请注明:文章转载自 www.mshxw.com
本文地址:https://www.mshxw.com/it/286572.html
我们一直用心在做
关于我们 文章归档 网站地图 联系我们

版权所有 (c)2021-2022 MSHXW.COM

ICP备案号:晋ICP备2021003244-6号