当前位置: 首页 > news >正文

通州顺德网站建设企业自助网站建设

通州顺德网站建设,企业自助网站建设,国外品牌vi设计,包车哪个网站做的最好给你两个按 非递减顺序 排列的整数数组 nums1 和 nums2#xff0c;另有两个整数 m 和 n #xff0c;分别表示 nums1 和 nums2 中的元素数目。请你 合并 nums2 到 nums1 中#xff0c;使合并后的数组同样按 非递减顺序 排列。注意#xff1a;最终#xff0c;合并后数组不应…给你两个按 非递减顺序 排列的整数数组 nums1 和 nums2另有两个整数 m 和 n 分别表示 nums1 和 nums2 中的元素数目。请你 合并 nums2 到 nums1 中使合并后的数组同样按 非递减顺序 排列。注意最终合并后数组不应由函数返回而是存储在数组 nums1 中。为了应对这种情况nums1 的初始长度为 m n其中前 m 个元素表示应合并的元素后 n 个元素为 0 应忽略。nums2 的长度为 n 。Python方法一#方法1 class Solution(object):def merge(self, nums1, m, nums2, n)::type nums1: List[int]:type m: int:type nums2: List[int]:type n: int:rtype: None Do not return anything, modify nums1 in-place instead.nums1[m:] nums2nums1.sort()print(nums1)快速排序的时间复杂度和空间复杂度https://blog.csdn.net/qq_35344198/article/details/106785849方法二双指针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.sorted []p1, p2 0, 0while p1 m or p2 n:if p1 m:sorted.append(nums2[p2])p2 1elif p2 n:sorted.append(nums1[p1])p1 1elif nums1[p1] nums2[p2]:sorted.append(nums1[p1])p1 1else:sorted.append(nums2[p2])p2 1nums1[:] sortedpython的指针https://zhuanlan.zhihu.com/p/549404860nums1[:]sort和nums1sort第一种在原地址修改值 第二种修改nums1的指针到sort方法三逆向双指针尾插法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.p1, p2 m - 1, n - 1tail m n - 1while p1 0 or p2 0:if p1 -1:nums1[tail] nums2[p2]p2 - 1elif p2 -1:nums1[tail] nums1[p1]p1 - 1elif nums1[p1] nums2[p2]:nums1[tail] nums1[p1]p1 - 1else:nums1[tail] nums2[p2]p2 - 1tail - 1总结方法一最简单方法二和方法三在时间复杂度上一致但是方法三的空间复杂度更低。从运行结果来看和网速有点关系内存的衡量每次也不太一样。JAVA方法1利用拼接后排序public void merge0(int[] nums1, int m, int[] nums2, int n){for(int i0;in;i){nums1[mi]nums2[i];}Arrays.sort(nums1);}方法2借助双指针 public void merge1(int[] nums1, int m, int[] nums2, int n) {int p1 0, p2 0,cur;int[] sort new int[mn];while (p1 m || p2 n) {if (p1 m) {curnums2[p2];p2 1;} else if (p2 n) {curnums1[p1];p1 1;} else if (nums1[p1] nums2[p2]) {cur nums2[p2];p2 1;} else {cur nums1[p1];p1 1;}sort[p1p2-1]cur;}for(int i0;i nums1.length;i){nums1[i]sort[i];}} 方法3借助逆向双指针在nums上操作 public void merge2(int[] nums1, int m, int[] nums2, int n) {int p1m-1,p2n-1,tail mn-1;while(p10 || p20){if(p1-1){nums1[tail]nums2[p2];p2-1;} else if (p2-1) {nums1[tail]nums1[p1];p1-1;} else if (nums1[p1]nums2[p2]) {nums1[tail]nums2[p2];p2-1;}else {nums1[tail]nums1[p1];p1-1;}tail-1;}}
http://www.hkea.cn/news/14478300/

相关文章:

  • 做网站能带来什么问题自建app
  • 网站免费做测算的网站
  • 深圳全国网站制作哪个好微商城小程序免费
  • 软件商店正版下载安装爱站工具seo综合查询
  • 个人网站开发需求分析网站服务器放置地查询
  • 建设银行网站流水账单怎么打随申行是国企嘛?
  • 全国高校校园网站联盟建设红番茄 网站点评
  • 农业做的好的网站嘉兴网站快速排名优化
  • 做网站比较好的公司有哪些建站优化推广
  • 网站内容由什么组成部分组成部分网站全站搜索代码
  • app网站免费简单门户网站开发
  • 购物导购网站开发济宁中小企业网站建设
  • adc网站建设dw可以制作网站吗
  • h5响应式网站建设方案怎么写四川seo整站优化费用
  • 做微商好还是开网站好写作网站可保存
  • 中山手机网站设计模板网生产线
  • 东光网站制作温州市建设工程管理网站
  • 做普通网站公司手机网站建设过程
  • 360网站建设公司wordpress存档:
  • 住房与建设局网站十堰做网站公司
  • 网站广告推广平台企业所得税分录
  • 站长工具使用方法自做网站图片版权
  • 凡科轻站小程序模板东莞网站制作网站推广价钱
  • 数据管理网站模板创建网站域名多少钱
  • 广州个人网站建设公司科技馆设计
  • 深圳制作网站公司哪里好ktv网站模板
  • 劲松网站建设哪家公司网站建设好
  • 做网站建设网站制作网站开发模式分为
  • 免费网站注册 建站我是在百度上搜广东网站建设
  • 公司网站上线流程山东营销网站建设联系方式