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

珠海房地产网站建设上海今天刚刚发生的新闻

珠海房地产网站建设,上海今天刚刚发生的新闻,自建站有哪些,给医院做网站赚钱吗目录 题目: 示例: 分析: 代码: 题目: 示例: 分析: 题目给我们两个升序数组,让我们合并它们,要求合并之后仍然是升序,并且这个合并操作是在数组1原地修改…

目录

题目:

示例:

分析:

代码:


题目:

示例:

分析:

题目给我们两个升序数组,让我们合并它们,要求合并之后仍然是升序,并且这个合并操作是在数组1原地修改的。数组1的有效数据长度为 m ,而数组1的长度为 m + n,n 是数组2的有效数据长度以及数组的长度。

比较直观容易想到的做法就是先把数组1的尾部删去 n 个无效数据,再把数组2都添加到数组1的尾部。接着直接对数组1排序即可。这样做是可以的,效果也还不错。

 不过这么做就没有利用到原数组是升序的这样一个特性。

另一个容易想到的是双指针,我们用双指针遍历分别两个数组,每次都比较两个指针所指元素的大小,将较小的元素添加进新数据,接着往后移动该指针。直到两个指针的大小分别为 m 和 n 即为遍历结束。

最后将新数组赋值给数组1即可。

那这么做还是有点不痛快,还是直接在数组1原地修改比较舒服。那有没有办法呢?

答案是有的。

首先我们上述办法肯定是不行的,这么做会把数组1的有效数据覆盖掉,那应该怎么做呢。

我们覆盖无效数据不就好啦,不能从头遍历我们就从尾部遍历,一样是双指针,只不过两个指针初始化为 m - 1 和 n - 1 ,每次比较两个指针所指元素的大小,我们把较大的元素放到数组1的末尾,直到两个指针都小于0,那么我们就是原地合并两个数组完毕了。

代码:

class Solution {
public:void merge(vector<int>& nums1, int m, vector<int>& nums2, int n) {int index1=m-1,index2=n-1,index3=n+m-1;while(index1>=0&&index2>=0){if(nums1[index1]>nums2[index2]) nums1[index3--]=nums1[index1--];else nums1[index3--]=nums2[index2--];}while(index1>=0) nums1[index3--]=nums1[index1--];while(index2>=0) nums1[index3--]=nums2[index2--];}
};

http://www.wooajung.com/news/23762.html

相关文章:

  • 手机企业网站多少钱网站销售怎么推广
  • 热铁盒网页托管b2b网站推广优化
  • 怎么给网站做优化杭州排名优化公司电话
  • 注册网站需要什么手续谷歌seo一个月费用需要2万吗
  • 织梦做商城类网站好做吗网上怎么做广告
  • 网件路由器登录密码百度seo新算法
  • 海珠区网站建设站长seo
  • 做化工贸易要用那些网站推广培训机构哪家最好
  • 现在的报税网站怎么做更正申报电话销售外呼系统软件
  • 建设银行招标网站网站免费客服系统
  • 南宁网络公司多少钱seo企业培训班
  • 网站测试方法福州seo网址优化公司
  • 外贸网站建设公司青岛b站黄页推广
  • 网站显示手机中病毒要按要求做网站推广平台
  • app开发和网站建设区别高端网站建设企业
  • 专业网站设计第三方服务网页设计主题推荐
  • 网站集群建设的意义网络营销的推广方式都有哪些
  • java网站开发的需求文档线上推广平台
  • 优秀网页版式设计百度关键词优化多久上首页
  • 做公司网站用哪个空间好网站软件免费下载
  • 做电影网站怎样赚钱吗举例说明什么是seo
  • 设计海报网站产品推广营销
  • 域名与网站建设凤凰网台湾资讯
  • 山西网站开发培训网络营销推广方案模板
  • 自助建站平台搭建seo辅助工具
  • 北京学校网站建设公司汕头seo优化项目
  • 在阿里巴巴上怎样做网站哈尔滨关键词优化报价
  • 虚拟机怎么做网站空间百度网址大全下载到桌面
  • 忘了网站链接怎么做网络营销策略的特点
  • 关于做网站建设公司你应该知道的今日国内新闻重大事件