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

德阳市建设局网站地址制作酒店网站

德阳市建设局网站地址,制作酒店网站,可以做硬件外包项目的网站,域名购买后还要解析吗问题描述 给定一个正整数、负整数和 0 组成的 N M 矩阵#xff0c;编写代码找出元素总和最大的子矩阵。 返回一个数组 [r1, c1, r2, c2]#xff0c;其中 r1, c1 分别代表子矩阵左上角的行号和列号#xff0c;r2, c2 分别代表右下角的行号和列号。若有多个满足条件的子矩阵…问题描述 给定一个正整数、负整数和 0 组成的 N × M 矩阵编写代码找出元素总和最大的子矩阵。 返回一个数组 [r1, c1, r2, c2]其中 r1, c1 分别代表子矩阵左上角的行号和列号r2, c2 分别代表右下角的行号和列号。若有多个满足条件的子矩阵返回任意一个均可。 解题思路 1. 基础概念Kadane算法 首先我们需要了解Kadane算法这是一种用于在一维数组中找到最大子数组和的算法。给定一个数组该算法可以找到一个连续子数组其元素之和最大并且能返回这个最大和。 2. 将问题从二维转化为一维 要在二维矩阵中寻找最大子矩阵和我们可以通过固定列的起始和结束点来将问题简化为一维问题 固定列界限选择两个列的索引left和right使得这两个索引之间的所有列都被包含在内。累加行元素对于每个行计算从left列到right列的元素和得到一个新的“行和数组”。例如如果left和right都是1即第二列那么行和数组中的每个元素就是原矩阵该行第二列的元素。 3. 应用Kadane算法到行和数组 对每一个固定的列对left和right我们都得到了一个行和数组。接下来 使用Kadane算法将Kadane算法应用于行和数组找出这个数组中的最大子数组和以及对应的起始行和结束行。记录最大和及其位置如果这次的最大子数组和大于之前记录的最大值更新最大值和相应的行和列索引。这些索引就确定了最大子矩阵的边界。 4. 处理所有可能的列对 从第一列开始逐一将每列作为起始列然后对每个可能的结束列重复上述过程。这意味着我们首先固定起始列然后让结束列从起始列开始向右延伸至矩阵的最后一列对每种情况都计算行和数组然后应用Kadane算法。 5. 输出最终结果 在所有列对组合被考虑之后全局记录的最大值及其对应的子矩阵边界就是我们的答案。这些信息可以用来标识出具有最大和的子矩阵。 代码实现 class Solution { public:vectorint getMaxMatrix(vectorvectorint matrix) {int maxSum INT_MIN;vectorint result(4); // 存放最终结果[r1, c1, r2, c2]int rows matrix.size(), cols matrix[0].size();// 遍历所有列的组合for (int left 0; left cols; left) {vectorint rowSum(rows, 0); // 初始化行和数组for (int right left; right cols; right) {// 计算从left到right列的行和for (int i 0; i rows; i) {rowSum[i] matrix[i][right];}// 应用Kadane算法找到最大的子数组和及其索引int currentMax INT_MIN, tempSum 0;int rowStart 0, tempRowStart 0, rowEnd 0;for (int i 0; i rows; i) {if (tempSum 0) {tempSum rowSum[i];tempRowStart i;} else {tempSum rowSum[i];}if (tempSum currentMax) {currentMax tempSum;rowStart tempRowStart;rowEnd i;}}// 更新全局最大和及对应的子矩阵坐标if (currentMax maxSum) {maxSum currentMax;result {rowStart, left, rowEnd, right};}}}return result;} };
http://www.w-s-a.com/news/471463/

相关文章:

  • nodejs 做网站wordpress主题绕过激活码
  • 平湖模板网站建设公司网页美工培训
  • 顺德网站建设市场建设工程交易中心网站
  • 深圳企业网站怎么做浪琴手表网站建设图
  • 2018网站外链怎么做济南 网站设计公司
  • 承德百度网站建设郑州网站seo优化公司
  • 四川建站模板网站公司分类信息网站制作
  • 网站开发前后端有wordpress模板安装教程视频教程
  • 有网站想修改里面的内容怎么做怎么做黑彩黑彩网站
  • 什么专业会做网站网站建设续费合同
  • 网站开发的项目开发网站做直播功能需要注册吗
  • 网站开发新手什么软件好网站设计师和ui设计师
  • 太仓苏州网站建设软件开发网站建设
  • 一个虚拟主机做2个网站吗工信部怎么查网站备案
  • 本地网站做淘宝客制作app步骤
  • 关于企业网站建设网页布局怎么设计
  • 惠州市网站设计公司裴东莞嘘网站汉建设
  • 长葛网站建站电子商务网站是什么
  • 泉做网站的公司太原网站建设开发公司
  • wordpress菜单栏的函数调用迅速上排名网站优化
  • 网站深圳广西模板厂哪家价格低
  • 搜索网站显示网页无法访问最好的网站推广
  • 巴彦淖尔市百家姓网站建设搬瓦工暗转wordpress
  • 温州鹿城区企业网站搭建云虚拟机
  • 网站的开发方法php网站商城源码
  • 旅游找什么网站好维护公司网站建设
  • 长春市长春网站制作站优化杭州企业推广网站
  • 网站建设开发设计营销公司山东网信办抓好网站建设
  • 斗图在线制作网站搜索关键词优化
  • 大连 网站建设 有限公司十大erp系统