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

深圳市住建局网站网上营销手段

深圳市住建局网站,网上营销手段,在那个网站做直播好赚钱,怎么制作游戏短视频【LetMeFly】1289.下降路径最小和 II#xff1a;通俗易懂地讲解O(n^2) O(1)的做法 力扣题目链接#xff1a;https://leetcode.cn/problems/minimum-falling-path-sum-ii/ 给你一个 n x n 整数矩阵 arr #xff0c;请你返回 非零偏移下降路径 数字和的最小值。 非零偏移下…【LetMeFly】1289.下降路径最小和 II通俗易懂地讲解O(n^2) O(1)的做法 力扣题目链接https://leetcode.cn/problems/minimum-falling-path-sum-ii/ 给你一个 n x n 整数矩阵 arr 请你返回 非零偏移下降路径 数字和的最小值。 非零偏移下降路径 定义为从 arr 数组中的每一行选择一个数字且按顺序选出来的数字中相邻数字不在原数组的同一列。 示例 1 输入arr [[1,2,3],[4,5,6],[7,8,9]] 输出13 解释 所有非零偏移下降路径包括 [1,5,9], [1,5,7], [1,6,7], [1,6,8], [2,4,8], [2,4,9], [2,6,7], [2,6,8], [3,4,8], [3,4,9], [3,5,7], [3,5,9] 下降路径中数字和最小的是 [1,5,7] 所以答案是 13 。示例 2 输入grid [[7]] 输出7提示 n grid.length grid[i].length1 n 200-99 grid[i][j] 99 方法一动态规划 这道题其实思路很简单 gird[i][j]来自gird[i - 1]的哪一个当然是gird[i - 1]中最小的那一个。如果grid[i - 1]中最小的那个元素恰好是j怎么办那么gird[i][j]就来自gird[i - 1]中第二小的那一个。 不难发现我们只关注上一行最小的两个元素的位置 具体实现 写一个函数findMin2(v)用来寻找数组v中最小的两个元素的位置。 用 i i i从第2行开始遍历地图grid 用 j j j遍历 g i r d [ i ] gird[i] gird[i] 如果 j j j等于上一行最小元素的下标 g r i d [ i ] [ j ] g r i d [ i − 1 ] [ 第二小元素的下标 ] grid[i][j] grid[i - 1][第二小元素的下标] grid[i][j]grid[i−1][第二小元素的下标]否则 g r i d [ i ] [ j ] g r i d [ i − 1 ] [ 最小元素的下标 ] grid[i][j] grid[i - 1][最小元素的下标] grid[i][j]grid[i−1][最小元素的下标] 最终返回最后一行的最小元素即可。 时间复杂度 O ( n 2 ) O(n^2) O(n2)其中 s i z e ( g i r d ) n × n size(gird) n\times n size(gird)n×n空间复杂度 O ( 1 ) O(1) O(1) AC代码 C class Solution { private:pairint, int findMin2(vectorint v) { // 只接收长度大于等于2的vpairint, int ans;int m v[0], loc 0;for (int i 0; i v.size(); i) {if (v[i] m) {m v[i], loc i;}}ans.first loc;loc ans.first ? 0 : 1, m v[loc]; // 如果第一个元素是最小的那么找第二个最小元素的时候就从上一行的第二个元素开始for (int i 0; i v.size(); i) {if (v[i] m i ! ans.first) {m v[i], loc i;}}ans.second loc;return ans;} public:int minFallingPathSum(vectorvectorint grid) {int n grid.size();for (int i 1; i n; i) {pairint, int last2min findMin2(grid[i - 1]); // i 1说明grid[i - 1].size() 2for (int j 0; j n; j) {grid[i][j] (j last2min.first ? grid[i - 1][last2min.second] : grid[i - 1][last2min.first]);}}return *min_element(grid.back().begin(), grid.back().end());} };Python # from typing import Listclass Solution:def findMin2(self, v: List[int]) - List[int]:ans [0, 0]m, loc v[0], 0for i in range(len(v)):if v[i] m:m, loc v[i], ians[0] locloc 0 if ans[0] else 1m v[loc]for i in range(len(v)):if v[i] m and i ! ans[0]:m, loc v[i], ians[1] locreturn ansdef minFallingPathSum(self, grid: List[List[int]]) - int:n len(grid)for i in range(1, n):last2min self.findMin2(grid[i - 1])for j in range(n):grid[i][j] grid[i - 1][last2min[0]] if j ! last2min[0] else grid[i - 1][last2min[1]]return min(grid[-1])同步发文于CSDN原创不易转载请附上原文链接哦~ Tisfyhttps://letmefly.blog.csdn.net/article/details/132201281
http://www.hkea.cn/news/14463120/

相关文章:

  • 搭建网站的价格怎么修改自己公司网站
  • 广东省工程建设注册中心网站哪里有网站设计学
  • 网站开发路径一个公司的官网怎么做
  • 一站式建站价格襄阳建设21网站
  • 教育培训网站模板下载h5制作软件 知乎
  • 检测设备技术支持东莞网站建设能够免费换友链的平台
  • 建设网站前准备资料wordpress 模板 橱窗
  • 湖南中核建设工程公司官方网站上海网站制作设计公司
  • 工信部网站域名备案手机网页版
  • 顺德网站制作案例市场网站后台问题
  • 响应式设计 手机网站外贸网站推广几个月后都没有效果
  • 中国建设交易信息网站河南建设资格执业网站
  • 优化网站排名解析推广怎么在qq上自己做网站
  • 旅游网站开发工程师wordpress is_category()
  • 做代练的网站wordpress好慢
  • 怎样自己开网站赚钱wordpress yusi主题
  • 泉州网站建设企业建设官方网站的主要作用
  • 做问卷美观的网站集约化网站建设的核心
  • wordpress建站指南制作报价网站
  • 没电脑可以建网站吗html网页游戏制作
  • 建站极速通佛山网站建设公司怎么选
  • 如何学习做网站怎么看网站是不是用凡客做的
  • wordpress站点标题副标题换行网页设计与制作项目教程素材
  • 织梦网站更改自己网站做seo
  • 做谷歌外贸较好网站wordpress 建站 linux
  • 浙江常升建设有限公司网站铜仁网站建设哪家专业
  • 怎么做网站弄网盟学生个人网站制作软件
  • 购物网站项目开发哪里有做php网站免费教程
  • 做网站前提需要什么wordpress主机免费
  • 做模版网站湖北省京山县建设局网站