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

小学网站建设教程seo博客写作

小学网站建设教程,seo博客写作,北京设计公司招聘信息,城阳做网站的公司文章目录题目描述题目链接题目难度——简单方法一:常规双指针遍历代码/Python方法二:字典\哈希表代码/Python总结题目描述 给你两个 二维 整数数组 nums1 和 nums2. nums1[i] [idi, vali] 表示编号为 idi 的数字对应的值等于 vali 。nums2[i] [idi, …

文章目录

    • 题目描述
    • 题目链接
    • 题目难度——简单
    • 方法一:常规双指针遍历
      • 代码/Python
    • 方法二:字典\哈希表
      • 代码/Python
    • 总结

题目描述

给你两个 二维 整数数组 nums1 和 nums2.

  • nums1[i] = [idi, vali] 表示编号为 idi 的数字对应的值等于 vali 。
  • nums2[i] = [idi, vali] 表示编号为 idi 的数字对应的值等于 vali 。

每个数组都包含 互不相同 的 id ,并按 id 以 递增 顺序排列。

请你将两个数组合并为一个按 id 以递增顺序排列的数组,并符合下述条件:

  • 只有在两个数组中至少出现过一次的 id 才能包含在结果数组内。
  • 每个 id 在结果数组中 只能出现一次 ,并且其对应的值等于两个数组中该 id 所对应的值求和。如果某个数组中不存在该 id ,则认为其对应的值等于 0 。

返回结果数组。返回的数组需要按 id 以递增顺序排列。

 

示例 1:

输入:nums1 = [[1,2],[2,3],[4,5]], nums2 = [[1,4],[3,2],[4,1]]
输出:[[1,6],[2,3],[3,2],[4,6]]
解释:结果数组中包含以下元素:

  • id = 1 ,对应的值等于 2 + 4 = 6 。
  • id = 2 ,对应的值等于 3 。
  • id = 3 ,对应的值等于 2 。
  • id = 4 ,对应的值等于5 + 1 = 6 。

示例 2:

输入:nums1 = [[2,4],[3,6],[5,5]], nums2 = [[1,3],[4,3]]
输出:[[1,3],[2,4],[3,6],[4,3],[5,5]]
解释:不存在共同 id ,在结果数组中只需要包含每个 id 和其对应的值。

 

提示:

  • 1 <= nums1.length, nums2.length <= 200
  • nums1[i].length == nums2[j].length == 2
  • 1 <= idi, vali <= 1000
  • 数组中的 id 互不相同
  • 数据均按 id 以严格递增顺序排列

题目链接

题目难度——简单

方法一:常规双指针遍历

  题目给的数据已经是有序的,那么我们可以用两个指针分别遍历这两个数组,同时保证结果有序,加入结果数组中,只不过这样略显麻烦。

代码/Python

class Solution:def mergeArrays(self, nums1: List[List[int]], nums2: List[List[int]]) -> List[List[int]]:p1, p2 = 0, 0n1 = len(nums1)n2 = len(nums2)res = []while p1 < n1 and p2 < n2:if nums1[p1][0] == nums2[p2][0]:res.append([nums1[p1][0], nums1[p1][1] + nums2[p2][1]])p1 += 1p2 += 1elif nums1[p1][0] < nums2[p2][0]:res.append(nums1[p1])p1 += 1else:res.append(nums2[p2])p2 += 1while p1 < n1:res.append(nums1[p1])p1 += 1while p2 < n2:res.append(nums2[p2])p2 += 1sorted(res)return res  

在这里插入图片描述

方法二:字典\哈希表

  题目说的请款完全符合一个字典的情况,所以我们可以用一个字典来存储两个数组中每个数及其对应值。

代码/Python

class Solution:def mergeArrays(self, nums1: List[List[int]], nums2: List[List[int]]) -> List[List[int]]:table = defaultdict(int)for i, val in nums1 + nums2:table[i] += valreturn sorted([[k, v] for k, v in table.items()])

在这里插入图片描述

总结

  因为有排序,所以方法一和二的时间复杂度都是O(logN),方法一的空间复杂度O(1), 方法二空间O(N)。

http://www.mnyf.cn/news/39202.html

相关文章:

  • 网站怎么做电脑系统下载文件如何建立网站 个人
  • 做网站简历怎么写营销技巧
  • 长清治做网站semiconductor是什么意思
  • 手机微信网站怎么做深圳百度国际大厦
  • 网站开发与应用论文百度文库自助建站系统软件
  • 网站建设php书籍一个企业该如何进行网络营销
  • 模板网站建设广州seo全网营销
  • 建设工程资料网站百度关键词优化大师
  • django网站开发源码最新推广注册app拿佣金
  • 订阅号做微网站网文网站排名
  • 网页制作基础成绩西安seo优化
  • 网站完成上线时间优化设计方法
  • wordpress商城功能成都网站seo推广
  • 涟水住房和城乡建设局网站web网页制作教程
  • 淘宝做代销在哪个网站上进货比较好百度竞价推广的技巧
  • 网站搜索优化排名郑州粒米seo外包
  • 阜宁县城乡建设局新的官方网站俄罗斯搜索引擎入口 yandex
  • 高端手机网站平台软文推广
  • 淄博做网站公司有哪些一站式海外推广平台
  • 网站制作多少钱公司网站建设详细方案模板
  • ppt做书模板下载网站个人如何注册网址
  • 阿里云做网站教程网站建设公司服务
  • 动态网站开发 用什么模板语言百度网盘服务电话6988
  • 网站日常维护方案天津百度关键词seo
  • 手机qq 插件 wordpress杭州seo排名公司
  • 广州海外建站优化营商环境条例全文
  • 如何在yy做电影网站关键词数据分析
  • wordpress没人用国外常用的seo站长工具
  • 成都娱乐场所最新消息代做seo排名
  • 施工企业的安全生产许可证谁发的长沙关键词优化新行情报价