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

义乌门户网站建设营销策划案

义乌门户网站建设,营销策划案,长沙市建设厅网站,wordpress 还原备份原题请见:LeetCode88 合并两个有序数组 1、题目描述 2、题目分析 关键点1:两个数组是非递减顺序 关键点2:nums2 合并进 nums1,意思是最好不用额外空间实现 关键点3:nums1 的长度是 (nums2长度 nums1长度…

原题请见:LeetCode88 合并两个有序数组

1、题目描述

请添加图片描述

2、题目分析

关键点1:两个数组是非递减顺序
关键点2:nums2 合并进 nums1,意思是最好不用额外空间实现
关键点3:nums1 的长度是 (nums2长度 + nums1长度

因为两数组是有序的,所以可以从两个数组的最左边(或者最右边),陆续比较哪个数组的边界元素更小(或更大)依次取出来扫到目标数组即可。
但考虑到本题目是在nums1 数组上原地排序,如果从左往右比较,会导致新元素插入nums1 的时候, nums1原来的元素需要依次右移,复杂度较高。
又考虑到 nums1 数组的右边 n 个元素都是空白的,所以从右往左比较,不会导致元素顺移问题。

3、题解

class Solution {public void merge(int[] nums1, int m, int[] nums2, int n) {// 最终目标数组的索引int idx = m + n - 1;int idx1 = m - 1;int idx2 = n - 1;// 依次取出来 nums1和nums2当前最大的,放在目标数组最右边while (idx1 >= 0 && idx2 >= 0) {if (nums1[idx1] >= nums2[idx2]) {nums1[idx--] = nums1[idx1--];} else {nums1[idx--] = nums2[idx2--];}}// 哪个数组还剩的话,说明这块整体小于另一个数组,剩下的直接陆续往左排while (idx1 >= 0) {nums1[idx--] = nums1[idx1--];}while (idx2 >= 0) {nums1[idx--] = nums2[idx2--];}}
}
http://www.dtcms.com/wzjs/384598.html

相关文章:

  • 描述一下网站建设的基本流程百度极速版下载安装
  • 网站建设收费详情微信公众号推广网站
  • 网站建设邀标方案百度广告费
  • 网站改版的几个建议网站推广公司黄页
  • 推荐盐城网站建设seo排名赚挂机
  • 做网站营销公司有哪些网推项目平台
  • wordpress 图片网站舆情监测系统排名
  • 商城网站设计教程网站排名优化软件哪家好
  • 寺庙网站开发文案网站优化排名
  • 商会信息平台网站建设方案爱站网官网
  • 广东省建设信息网站公司注册流程
  • 党建设计素材网站天津网站建设优化
  • 无锡手机网站seo每日工作内容
  • 四川宜宾市网站建设公司网站设计框架
  • 傻瓜式app制作百度搜索结果优化
  • 网站开发用例图优化近义词
  • 如何做交互式网站培训心得体会范文
  • 深圳做网站排名公司哪家好怎么注册域名
  • 网络营销与策划实务云南网络营销seo
  • 网站建设费属于无形资产吗网站优化推广软件
  • 太原做网站公司网址大全2345
  • 如何不花钱建设网站做seo网页价格
  • 做网站精英怎么优化关键词
  • 常州低价网站建设公司关键词挖掘机爱站网
  • 学网站开发多少钱产品软文代写
  • 秦皇岛网站建设哪里有杭州seo网络推广
  • wordpress标签是干什么的厦门谷歌seo
  • 淘宝上的网站怎么做成都关键词快速排名
  • 英语工作室网站怎么做百度推广北京总部电话
  • 网站建设方案云盘郑州网络营销排名