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

两个有序数组的合并,python版

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

两个有序数组的合并,python版


看到其他部门的笔试题,发现有这个题目:两个有序数组的合并,于是尝试着用python写出来

关键:

1、两个数组已经排序好,所以内部无需比较,比较都是存在于两个数组之间

2、比较结束后,需要将其中一个数组的剩余序列添加到最终的数组

具体如下:

if __name__ == '__main__':

    a=[2,4,6,8,9,10]

    b=[0,1,3,6,7,9,100,134]

    counta=countb=0#分别记录两个数组遍历到哪个位置了

    c=[]

    for i in range(counta,len(a)):

        for j in range(countb,len(b)):

            print "b[j]:",j,b[j]

            if(b[j]<=a[i]):

                c.append(b[j])

                countb=countb+1#append了b[j],那么b数组的遍历的记录应该自增

            else:

                c.append(a[i])

                counta=counta+1#append了a[i],那么a数组的遍历的记录应该自增

                break#为啥要break?因为到此位置,说明b数组不能继续往下遍历了,该遍历a了

    #现在就需要吧两个数组中剩余的元素依次append到c中即可

    if (counta

        for i in range(counta,len(a)):

            c.append(a[i])

    if (countb

        for j in range(countb,len(b)):

            c.append(b[j])

    print c

©著作权归作者所有:来自51CTO博客作者hh2o的原创作品,如需转载,请与作者联系,否则将追究法律责任


转载请注明:文章转载自 www.mshxw.com
本文地址:https://www.mshxw.com/it/221054.html
我们一直用心在做
关于我们 文章归档 网站地图 联系我们

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

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