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

seo企业网站模板站长工具seo综合查询 分析

seo企业网站模板,站长工具seo综合查询 分析,低价网站建设推广报价,岳阳网站建设7. 1439.有序矩阵中的第K个最小数组和(困难,学习转化为373) 1439. 有序矩阵中的第 k 个最小数组和 - 力扣(LeetCode) 思想 1.给你一个 m * n 的矩阵 mat,以及一个整数 k ,矩阵中的每一行都以非递减的顺序排列。 你可以从每一行…
7. 1439.有序矩阵中的第K个最小数组和(困难,学习转化为373)

1439. 有序矩阵中的第 k 个最小数组和 - 力扣(LeetCode)

思想

1.给你一个 m * n 的矩阵 mat,以及一个整数 k ,矩阵中的每一行都以非递减的顺序排列。
你可以从每一行中选出 1 个元素形成一个数组。返回所有可能数组中的第 k 个 最小 数组和。
2.转化为373.查找和最小的K对数字,利用最小堆,373是从两个数组找前K个,而此题是m*n矩阵,但是发现假设已经取完矩阵前两行的数组和,再考虑第3行时,只要考虑前两行数组前K个值即可(因为后面的不可能是最终的K个最小数组和),所以问题就转化为得到前面i-1行的最小K个数组和数组,然后第i行考虑进来,最终再得到一个最小K个数组和数组,实现行的压缩
3.初始数组为只有0元素的数组和第一行(表示取第一行前K个元素)

代码

c++:

class Solution {
public:vector<int> kSmallestPairs(vector<int>& nums1, vector<int>& nums2, int k) {int n1 = nums1.size(), n2 = nums2.size();priority_queue<tuple<int, int, int>> pq;vector<int> res;for (int i = 0; i < min(n1, k); ++i) {pq.emplace(-nums1[i] - nums2[0], i,0); }while (!pq.empty() && res.size() < k) {auto t = pq.top();pq.pop();int i = get<1>(t), j = get<2>(t);res.push_back(nums1[i] + nums2[j]);if (j + 1 < n2)pq.emplace(-nums1[i] - nums2[j + 1], i,j + 1); }return res;}int kthSmallest(vector<vector<int>>& mat, int k) {int n = mat.size();vector<int> ini = {0};for (auto& row : mat) {ini = kSmallestPairs(row, ini, k);}return ini.back();}
};
8. 786. 第K个最小的质数分数(中等)
思想

1.给你一个按递增顺序排序的数组 arr 和一个整数 k 。数组 arr 由 1 和若干 质数 组成,且其中所有整数互不相同。
对于每对满足 0 <= i < j < arr.length 的 i 和 j ,可以得到分数 arr[i] / arr[j] 。
那么第 k 个最小的分数是多少呢?  以长度为 2 的整数数组返回你的答案, 这里 answer[0] == arr[i] 且 answer[1] == arr[j] 。
2.依旧转化为373.查找和最小的K对数字,只不过nums2是倒序的arr,且多个条件i+j!=n-1

代码

c++:

class Solution {
public:vector<int> kthSmallestPrimeFraction(vector<int>& arr, int k) {int n = arr.size();vector<int> arr2 = arr;vector<vector<int>> res;reverse(arr2.begin(), arr2.end());priority_queue<tuple<double, int, int>> pq;for (int i = 0; i < min(n - 1, k); ++i)pq.emplace(-1.0 * arr[i] / arr2[0], i, 0);while (res.size() < k && !pq.empty()) {auto t = pq.top();pq.pop();int i = get<1>(t), j = get<2>(t);if (i + j == n - 1)continue;res.push_back({arr[i], arr2[j]});if (j + 1 < n)pq.emplace(-1.0 * arr[i] / arr2[j + 1], i, j + 1);}return res.back();}
};
http://www.dtcms.com/wzjs/411370.html

相关文章:

  • 网络营销又可以称为seo 资料包怎么获得
  • 体育馆做网站公司建站
  • 360免费建站pomhubseo优化内页排名
  • 好学校平台网站模板下载安装企业网站推广外包
  • 做html5网站互联网营销
  • 商城网站多少钱做品牌推广方式都有哪些
  • 企业高端网站制作搜索引擎营销的英文缩写
  • 北京房价已经崩盘了福州seo招聘
  • 郑州的做网站公司哪家好网络推广的平台有哪些
  • 中山网站建设seo135不知怎么入门
  • 网站广告用ps如何做专业提升关键词排名工具
  • 做网站每年需要多少维护费外贸网站推广的方法
  • 刚开始的网站开发公司最新的全国疫情数据
  • 广东工厂网站建设新app推广去哪里找
  • 网页标准化对网站开发维护者的好处重庆网络推广平台
  • 代驾app软件开发公司北京网站优化指导
  • 手机网站制作推广定制万能搜索
  • 西三旗网站建设国际最新十大新闻事件
  • 360网站拦截做电销外包团队在哪找
  • 做模板网站怎么放视频教程bing搜索引擎
  • 中软国际软件培训六安seo
  • 网站建设费用价格中小企业网站
  • seo织梦网站建设步骤企业危机公关
  • sdcms网站源码百度怎么发布自己的信息
  • 营销型网站管理系统佛山网站建设解决方案
  • 大型网站开发 书籍seo需要什么技术
  • 盐城市网站北京seo网络优化师
  • 山西网络建站代运营优化设计电子课本
  • 有免费做理化试验的网站吗网络推广的渠道
  • 做网站很麻烦吗电脑培训班附近有吗