假设我们有两个排序数组A和B。我们必须将它们合并并仅形成一个排序数组C。列表的大小可能不同。

例如,假设A = [1,2,4,7]和B = [1,3,4,5,6,8],则合并列表C将为[1,1,2,3,4, 4,5,6,7,8]

为了解决这个问题,请遵循以下步骤-定义i:= 0,j:= 0,结束:= A – 1的长度

而end> = 0而不是A [end],结束:=结束– 1

而j 结束而不是A [i],则A [i]:= B [j],并将j增加1

否则,如果A [i]> B [j],则执行shift(A,i),A [i]:= B [j],将end和j加1

使我增加1

shift方法将如下所示工作-接受输入num_arr,然后我

j:= num_arr的长度– 1

而不是num_arr [j]做j:= j – 1

当j> = i时,做num_arr [j + 1] = num_arr [j],而j:= j – 1

让我们看一下实现以获得更好的理解

示例class Solution(object):

def merge(self, nums1, m, nums2, n):

i = 0

j = 0

end = len(nums1)-1

while end>=0 and not nums1[end]:

end-=1

while j

if i>end and not nums1[i]:

nums1[i] = nums2[j]

j+=1

elif nums1[i]>nums2[j]:

self.shift(nums1,i)

nums1[i] = nums2[j]

end+=1

j+=1

i+=1

return nums1

def shift(self,num,i):

j = len(num)-1

while not num[j]:

j-=1

while j>=i:

num[j+1] = num[j]

j-=1

ob = Solution()print(ob.merge([1,2,3,0,0,0],3,[2,5,6],3))

输入项[1,2,3,0,0,0]

[2,5,6]

输出结果[1, 2, 2, 3, 5, 6]

python两个数组合并排序_合并Python中的排序数组相关推荐

  1. python两个数组合并排序_2、合并排序数组

    1.问题描述 问题描述:合并两个升序的整数数组A和B,形成一个新的数组,新数组也要有序. 2.问题示例 输入A[1],B=[1],输出[1, 1],返回合并后的数组. 输入A=[2, 4, 6, 7] ...

  2. python 两个乘号是什么_(2)Python 变量和运算符

    一.python变量特点 python是弱类型语言,无需声明变量可以直接使用并且变量的数据类型可以动态改变 二.变量命名规则 1.不能使用python关键字 2.不能数字开头 3.不能包含空格 4.不 ...

  3. python两个list取交集_使用 Python 获取两个列表的交集、并集、差集的常用方法 | Jin''''s Blog...

    在数据处理中经常需要使用 Python 来获取两个列表的交集,并集和差集.在 Python 中实现的方法有很多,我平时只使用一两种我所熟悉的,但效率不一定最高,也不一定最优美,所以这次想把常用的方法都 ...

  4. python两台电脑文件传输_两行python代码实现一个http服务器,告别文件传输烦恼...

    如果你有一个文件需要在两台Linux服务器上进行传输,你会怎么办? 如果你要将Linux服务器上的文件传给不会编程的产品经理,你又会怎么办? 1.问题引入 不知道大家有没有遇到过这样的问题: 在实际的 ...

  5. python两列数据生成邻接矩阵_用python实现邻接矩阵转换为邻接表,python语言实现...

    graph = {'A': ['B', 'C'], 'B': ['C', 'D'], 'C': ['D'], 'D': ['C','G','H'], 'E': ['F'], 'F': ['C']} # ...

  6. python判断两个数是否互质_《算法》第一章——判断两个整数是否互质

    判断两个整数互质的方法 概念:公约数只有1的两个数叫做互质数.根据互质数的概念可以对一组数是否互质进行判断.如:9和11的公约数只有1,则它们是互质数. 求商判断法:用大数除以小数,如果除得的余数与其 ...

  7. python中用def实现自动排序_用 python 实现各种排序算法

    常见集中排序的算法 归并排序 归并排序也称合并排序,是分治法的典型应用.分治思想是将每个问题分解成个个小问题,将每个小问题解决,然后合并. 具体的归并排序就是,将一组无序数按n/2递归分解成只有一个元 ...

  8. 一句Python,一句R︱数据的合并、分组、排序、翻转、集合

    先学了R,最近刚刚上手python,所以想着将python和R结合起来互相对比来更好理解python.最好就是一句python,对应写一句R. python中的numpy模块相当于R中的matirx矩 ...

  9. python猜名词甲乙丙_用python实现了一下:甲乙两人互猜数字(数理逻辑)

    #-*- coding: utf-8 -*-#!/usr/local/bin/python defis_prime2(number):'''判断数字是否是特殊质数(数学上质数和分解因子相同的数).分解 ...

最新文章

  1. 重构风险程序员一定要遵守的规则
  2. 苹果2010新品发布会图文实录
  3. Python 爬取简单网页
  4. python调用java方法_python加载和使用java的类的方法
  5. BIO、NIO 和 AIO
  6. 二级c语言上机题库及解析,2013年计算机二级C语言上机题库及答案解析(3)
  7. 《Python爬虫开发与项目实战》——第3章 初识网络爬虫 3.1 网络爬虫概述
  8. c 将txt导入oracle,如何把文本数据导入Oracle中?
  9. md5 java 工具类_Java实现一个MD5工具类
  10. JAVA获取程序/jar包所在路径
  11. C语言10个经典小程序——小白必备!
  12. 计算机多媒体简历,[计算机个人简历模板范文]计算机多媒体专业个人简历
  13. 手把手教你获得CSDN徽章:CSDN IT冷知识 每日一练
  14. 交通信号灯的检测与识别
  15. 利用信息差赚美金?对!你没看错!
  16. CSV写入时指定表头
  17. 翻译软件-好用的翻译软件-免费翻译软件大全
  18. discuz模板制作中关于css使用的一些指导说明
  19. Android Studio3.0对于百度地图SDK的开发(基于方向传感器实现手机朝向显示)
  20. Pixel3 支持中国电信2G语音、4G网络、VOLTE

热门文章

  1. BAT用户画像数据浅析
  2. matlab软件及基础实验第8单元,《MATLAB统计分析与应用:40个案例分析》程序与数据(内含彩蛋)...
  3. 魅族note8完美打开usb调试模式的教程
  4. 第十六周学习周报20181224-20181230
  5. 好奇号火星车是我梦中的情人
  6. istqb纸质证书_关于istqb证书有效期的阿里云论坛用户知识和技术交流
  7. python 换硬币
  8. 网络的形成-从原始部落到现代化世界
  9. 关于抽象工厂模式的定义和实现
  10. 【网络问题】微软商店无法打开:重试该操作,无法加载页面。请稍后重试