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

郑州网站建设tpywlkj学校网站在哪里找

郑州网站建设tpywlkj,学校网站在哪里找,旺店通app手机企业版下载,在网站上如何做天气预报栏Every day a Leetcode 题目来源#xff1a;1122. 数组的相对排序 解法1#xff1a;哈希 用集合 set 存储 arr2 中的元素。 遍历数组 arr1 #xff0c;设当前元素为 num#xff1a; 如果 num 在 set 中出现#xff0c;用哈希表 hash 记录 num 和它出现的次数。否则1122. 数组的相对排序 解法1哈希 用集合 set 存储 arr2 中的元素。 遍历数组 arr1 设当前元素为 num 如果 num 在 set 中出现用哈希表 hash 记录 num 和它出现的次数。否则用将 num 插入数组 remain。 遍历数组 arr2设当前元素为 num。向 ans 中插入 hash[num] 个 num。 将 remain 增序排序将 remain 插入 ans 的后面。 代码 /** lc appleetcode.cn id1122 langcpp** [1122] 数组的相对排序*/// lc codestart class Solution { public:vectorint relativeSortArray(vectorint arr1, vectorint arr2){unordered_mapint, int hash;setint set(arr2.begin(), arr2.end());vectorint remain;for (const int num : arr1){if (set.count(num))hash[num];elseremain.push_back(num);}vectorint ans;for (const int num : arr2){if (hash.count(num))for (int i 0; i hash[num]; i)ans.push_back(num);}// 未在 arr2 中出现过的元素需要按照升序放在 arr1 的末尾sort(remain.begin(), remain.end());for (int i 0; i remain.size(); i)ans.push_back(remain[i]);return ans;} }; // lc codeend结果 复杂度分析 时间复杂度O(mlogmn)其中 m 和 n 分别是数组 arr1 和 arr2 的长度。构建哈希表的时间复杂度为 O(n)排序的时间复杂度为 O(mlogm)。 空间复杂度O(logmn)其中 m 和 n 分别是数组 arr1 和 arr2 的长度。哈希表的空间复杂度为 O(n)排序使用的栈的空间复杂度为 O(mlogm)。 解法2计数排序 注意到本题中元素的范围为 [0, 1000]这个范围不是很大我们也可以考虑不基于比较的排序例如「计数排序」。 优化实际上我们不需要使用长度为 1001 的数组而是可以找出数组 arr1 中的最大值 upper使用长度为 upper1 的数组即可。 代码 /** lc appleetcode.cn id1122 langcpp** [1122] 数组的相对排序*/// lc codestart // class Solution // { // public: // vectorint relativeSortArray(vectorint arr1, vectorint arr2) // { // unordered_mapint, int hash; // setint set(arr2.begin(), arr2.end()); // vectorint remain; // for (const int num : arr1) // { // if (set.count(num)) // hash[num]; // else // remain.push_back(num); // } // vectorint ans; // for (const int num : arr2) // { // if (hash.count(num)) // for (int i 0; i hash[num]; i) // ans.push_back(num); // } // // 未在 arr2 中出现过的元素需要按照升序放在 arr1 的末尾 // sort(remain.begin(), remain.end()); // for (int i 0; i remain.size(); i) // ans.push_back(remain[i]); // return ans; // } // };class Solution { public:vectorint relativeSortArray(vectorint arr1, vectorint arr2){int upper *max_element(arr1.begin(), arr1.end());vectorint freq(upper 1, 0);for (const int num : arr1)freq[num];vectorint ans;for (const int num : arr2){for (int i 0; i freq[num]; i)ans.push_back(num);freq[num] 0;}for (int num 0; num upper; num)for (int i 0; i freq[num]; i)ans.push_back(num);return ans;} }; // lc codeend结果 复杂度分析 时间复杂度O(mnupper)其中 m 和 n 分别是数组 arr1 和 arr2 的长度。upper 是数组 arr1 的最大值。 空间复杂度O(upper)其中 upper 是数组 arr1 的最大值。即为数组 freq 需要使用的空间。
http://www.dnsts.com.cn/news/232445.html

相关文章:

  • 有经验的顺德网站建设柳市网站建设哪家好
  • 邯郸做网站就找安联网络建网站中企动力最行
  • 中铁广州建设有限公司网站wordpress资源管理
  • 企业网站建设知乎做旅游网站挣钱吗
  • 北京哪有建网站公司或个人的wordpress图下一篇
  • ASP个人网站的建设医疗网站建设流程
  • 怎么登陆网站后台管理系统网站做实名认证
  • 郑州炫彩网站建设网站建设公司相关资质
  • 做笔记的网站源码网络推广优化招聘
  • 音乐网站设计新汉阳火车站最新消息权威发布
  • 如何自己设置网站深圳的网站设计
  • 易乐自助建站用淘宝做公司网站
  • 关于做香奈儿网站的PPT二元期权网站建设
  • 校园网站建设需要数据库吗学建筑的女生后悔吗
  • 网站数据不变重新安装wordpress大尺度做爰网站
  • 南京汽车 企业 网站建设北大青鸟教网站开发吗
  • 您网站建设手机在线logo生成器
  • 最新淘宝客网站程序优化公司治理结构的措施
  • h5彩票网站怎么做新农村建设举报网站
  • 陕西省建设集团公司网站开放平台的核心目的是
  • 网站建设与管理指什么电子商务网站开发的步骤
  • 网站seo外包技术资源网站界面设计内容
  • 做视频网站要什么网站如何做cdn
  • wp建站系统wordpress 页码插件
  • 网站设计流程图网站开发 名片
  • 手机app下载网站辽宁省建设工程招标协会网站
  • 网站建设合同 含维护费网站建设个人
  • 海口网站建设就q479185700上墙苏州外贸公司网站建设流程
  • 定西网站建设近几天的新闻摘抄
  • 滨州市住房和城乡建设局网站seo关键词排名优化系统源码