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

装修网站推广方案手机app客户端做网站

装修网站推广方案,手机app客户端做网站,wordpress 主题名称修改,seo优化软件力扣面试150题 | 88.合并两个有序数组 题目描述解题思路代码实现复杂度分析 题目描述 88.合并两个有序数组 给你两个按 非递减顺序 排列的整数数组 nums1 和 nums2,另有两个整数 m 和 n ,分别表示 nums1 和 nums2 中的元素数目。 请你 合并…

力扣面试150题 | 88.合并两个有序数组

  • 题目描述
  • 解题思路
  • 代码实现
  • 复杂度分析

题目描述

88.合并两个有序数组

给你两个按 非递减顺序 排列的整数数组 nums1 和 nums2,另有两个整数 m 和 n ,分别表示 nums1 和 nums2 中的元素数目。

请你 合并 nums2 到 nums1 中,使合并后的数组同样按 非递减顺序 排列。

注意:最终,合并后数组不应由函数返回,而是存储在数组 nums1 中。为了应对这种情况,nums1 的初始长度为 m + n,其中前 m 个元素表示应合并的元素,后 n 个元素为 0 ,应忽略。nums2 的长度为 n 。

示例 1:

输入:nums1 = [1,2,3,0,0,0], m = 3, nums2 = [2,5,6], n = 3
输出:[1,2,2,3,5,6]
解释:需要合并 [1,2,3] 和 [2,5,6] 。
合并结果是 [1,2,2,3,5,6] ,其中斜体加粗标注的为 nums1 中的元素。

示例 2:

输入:nums1 = [1], m = 1, nums2 = [], n = 0
输出:[1]
解释:需要合并 [1] 和 [] 。
合并结果是 [1] 。
示例 3:

输入:nums1 = [0], m = 0, nums2 = [1], n = 1
输出:[1]
解释:需要合并的数组是 [] 和 [1] 。
合并结果是 [1] 。

注意,因为 m = 0 ,所以 nums1 中没有元素。nums1 中仅存的 0 仅仅是为了确保合并结果可以顺利存放到 nums1 中。

提示:

  • nums1.length == m + n
  • nums2.length == n
  • 0 <= m, n <= 200
  • 1 <= m + n <= 200
  • -109 <= nums1[i], nums2[j] <= 109

解题思路

整体思路是从后向前更新数组,让一个指针i指向nums1有意义元素的末尾,也就是i = m - 1,另一个指针j指向nums2的末尾,即j = n - 1,第三个指针k指向nums1的末尾,即k = m + n - 1

随后遍历指针i和指针j,对比nums[i]nums[j],让k指向较大的那个,随着ij的遍历,k也递减,从而达到让指针k在原数组的基础上重新构造出一个数组。

代码实现

class Solution {
public:void merge(vector<int>& nums1, int m, vector<int>& nums2, int n) {int i = m - 1;int j = n - 1;int k = m + n - 1;while (j >= 0){ // 让j遍历完if (i >= 0 && nums1[i] > nums2[j]) {nums1[k--] = nums[i--];} else {nums1[k--] = nums[j--];}}}
};

复杂度分析

  • 时间复杂度:O(m+n)
  • 空间复杂度:O(1)
http://www.yayakq.cn/news/38754/

相关文章:

  • wordpress目录遍历漏洞企业站seo哪家好
  • 电气网站模板佛山微网站建设 天博
  • 数码家电商城网站源码页面设计在哪儿
  • asp.net 做g公司网站电商网站建设开发维护
  • 化工建设信息网站常州市建设工程网站
  • 计算机网站开发职业定位上海注册外贸公司
  • 专业的网站设计网络国外企业网站设计欣赏
  • 公司网站建设的会计分录品牌推广公司是做什么的
  • 企业形象网站开发业务范畴如何用html做网站
  • 全站仪快速建站垂直 网站开发
  • 做网站需要工商执照吗网站建设 企炬江阴
  • 简单网站建设视频教程下载网站制作首先
  • 吴忠市建设局官方网站栾城住房和城乡建设局网站
  • 电子商务网站建设与管理课程的目的宁波男科医院哪家比较好
  • 烟台网站seo服务梵克雅宝手链
  • 口碑好的盐城网站建设wordpress 企业主页
  • 我想建立个网站怎么弄中建设计集团网站
  • 汤姆叔叔官方网站建设河南建设信息港网站查询
  • 张家港网站设计制作早晨设计myeclipse做网站的步骤
  • 怎么提高网站响应速度婚纱摄影网站的设计思路
  • 如何做微网站免费做网站哪里有
  • 网站建设与管理logo福州网站建设设计公司
  • 免费发布产品网站成都装修设计公司排名
  • 网站自动更新时间代码有免费的微网站是什么
  • 淄博周村网站建设公司设计师应该知道的网站
  • 娱乐网站模板网站开发毕业设计
  • 福田区住房和建设局网站手机代理
  • 宁波企业网站优化推广高端网站开发设计简介
  • 惠州网站建设领头羊校园官方网站如何制作
  • 福州网站开发私人泰安网站制作推广