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

网站建设前期分析的内容水利建设专项收入在什么网站上申报

网站建设前期分析的内容,水利建设专项收入在什么网站上申报,seo外链怎么发,外贸推广平台有哪些题目信息 LeetoCode地址: . - 力扣#xff08;LeetCode#xff09; 题解内容大量转载于#xff1a;. - 力扣#xff08;LeetCode#xff09; 题目理解 题意很直观#xff0c;就是求二维矩阵中所有元素排序后第k小的数。 最小堆写法 该写法不再赘述#xff0c;维护…题目信息 LeetoCode地址: . - 力扣LeetCode 题解内容大量转载于. - 力扣LeetCode 题目理解 题意很直观就是求二维矩阵中所有元素排序后第k小的数。 最小堆写法 该写法不再赘述维护一个大小为k的小顶堆遍历矩阵所有元素进行入堆操作。 时间复杂度:O(nlogk) 空间复杂度:O(k) class Solution {public int kthSmallest(int[][] matrix, int k) {PriorityQueueInteger heap new PriorityQueue((a,b) - (int)b-(int)a);for (int i 0; imatrix.length; i) {for (int j 0; jmatrix[0].length;j) {if (heap.size() k) {heap.offer(matrix[i][j]);} else if (matrix[i][j] heap.peek()) {heap.poll();heap.offer(matrix[i][j]);}}}return heap.peek();} } 二分写法 由于矩阵在行和列上都是有序的因此左上角的元素matrix[0][0]一定是最小的右下角的元素matrix[n-1][n-1]一定是最大的。这两个元素我们分别记为l 和 r. 以下图为例: 可以发现 任取一个数mid满足lmidr, 那么矩阵中不大于mid的数肯定都分布在矩阵的左上角。 例如下图, 取mid8: 我们可以看出矩阵中大于mid的数和不大于mid的数分别形成了两个版本沿着一条锯齿线将这个矩形分隔开。其中左上角板块的大小即为不大于mid的数的数量。 我们只需沿着这条锯齿线走一遍即可计算出这两个板块的大小自然就统计出这个矩阵中不大于mid的数的个数了。 同样以mid8举例走法如下: 走法可以总结如下: 初始位置在matrix[n-1][0] (即左下角);设当前位置为matrix[i][j], 若matrix[i][j] mid, 则将当前所在列的不大于mid的数的数量(即i1)累加到答案中并向右移动否则向上移动;不断移动直到走出格子为止。 可以发现这样的走法时间复杂度为O(n),即我们可以线性的计算对于任意一个mid,矩阵中有多少数不大于它。这满足了二分查找的性质。 不妨设答案为x, 那么可以直到lxr, 这样就确定了二分查找的上下界。 对于每次猜测的答案mid, 计算矩阵中有多少数不大于 mid: 如果数量不少于k, 那么说明最终答案不大于mid;如果数量小于k, 那么说明最终答案大于mid. 这样我们就可以计算出最终的结果x了。 时间复杂度: O(nlogn) 额外空间复杂度: O(1) class Solution {public int kthSmallest(int[][] matrix, int k) {int h matrix.length, w matrix[0].length;int l matrix[0][0], r matrix[h-1][w-1];while (l r) {int mid l (r-l)/2;if (check(matrix, mid, k)) {r mid;} else {l mid1;}}return l;}public boolean check(int[][] matrix,int mid, int k) {int i matrix.length-1, j 0;int count 0;while (i 0 j matrix[0].length) {if (matrix[i][j] mid) {count i1;j;} else {i--;}}return count k; } }
http://www.w-s-a.com/news/417679/

相关文章:

  • 单页面 网站 模板网站代理公司
  • 手机网站底部电话代码网站后台点击添加图片没有反应
  • 龙岩建设局网站声明自学制作网站难不难
  • 济南网站优化小黑godaddy中文网站开发
  • 做微课常用的网站广州seo优化推广
  • 主机屋如何做网站电脑网页游戏大全
  • 工作网站建设中布线费用账务处理特色的重庆网站推广
  • dede 网站地图模板htm写作网站水平哪个最好
  • 服务器上的网站erp教学零基础入门
  • 网站建设58设计资料网站
  • 如何把动态图发网站做头像网页设计实训报告小结
  • 做简历用的网站wordpress版权说明
  • 网站关键词有哪些网站新闻前置审批
  • 怎么自己注册网站义乌做公司网站
  • 做哪种网站赚钱苏州住房城乡建设部网站
  • 镇江做网站学编程学哪一种比较好
  • 华美天一建筑公司网站赚钱做任务的网站有哪些
  • asp网站打开速度慢家乡网页设计教程
  • 网站 设计 深圳书店网站的建设
  • 北京网络营销推广培训哪家好南宁软件优化网站建设
  • flash网站引导页仓库管理系统源码
  • 济南网站制作公司排名营销型网站管理系统
  • 公司网站设计要多少钱用什么做网站的访问量统计
  • 湖北省住房和城乡建设厅门户网站沈阳网络平台推广公司
  • 河南平台网站建设公司网站如何提高转化率
  • 网站及推广wordpress 分享主题
  • 房产网站有哪些如何自己建一个微网站
  • 青岛市黄岛区城市建设局网站手机域名访问网站怎么进入
  • 网站模板 双语河南省建设人才信息网官网
  • 网站建设备案优化之看邹城网站开发