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

如何批量做网站关键词搜索查询

如何批量做网站,关键词搜索查询,网站建设的单词,焦作城乡一体化示范区人民政府门户网站建设文章目录 题目问题反思 题目 题目如下,其实并不难,属于小而美的前缀和技巧中的体型。因为我之前做过这道题,所以重刷也马上就能写。但是对比我写的和之前看别人写的,明显我的代码不够简洁,一个核心的差异在于对DP数组…

文章目录

  • 题目
  • 问题
  • 反思

题目

题目如下,其实并不难,属于小而美的前缀和技巧中的体型。因为我之前做过这道题,所以重刷也马上就能写。但是对比我写的和之前看别人写的,明显我的代码不够简洁,一个核心的差异在于对DP数组的定义上。

在这里插入图片描述

问题

先看下我的代码,我对DP数组的定义是:存储以(0,0)为起点,到(i, j)的数组之和。提交代码显示超出时间限制。

两个问题:

  1. 边界条件处理贼麻烦,我自己写的时候也注意到了;(但这不是导致超时的原因)
  2. 处理超时,因为我每次要算一遍DP。
class NumMatrix:def __init__(self, matrix: List[List[int]]):self.matrix = matrixdef sumFromLeftCorner(self):R, C = len(self.matrix), len(self.matrix[0])dp = [[0 for j in range(C)] for i in range(R)]for i in range(R):for j in range(C):if i == 0 and j == 0:dp[i][j] = self.matrix[i][j]elif i == 0:dp[i][j] = dp[i][j-1] + self.matrix[i][j]elif j == 0:dp[i][j] = dp[i-1][j] + self.matrix[i][j]else:dp[i][j] = dp[i-1][j] + dp[i][j-1] - dp[i-1][j-1] + self.matrix[i][j]return dpdef sumRegion(self, row1: int, col1: int, row2: int, col2: int) -> int:dp = self.sumFromLeftCorner()if row1 == 0 and col1 == 0:return dp[row2][col2]elif row1 == 0:return dp[row2][col2] - dp[row2][col1 - 1]elif col1 == 0:return dp[row2][col2] - dp[row1 - 1][col2]else:return dp[row2][col2] - dp[row1-1][col2] - dp[row2][col1-1] + dp[row1-1][col1-1]

反思

对于第一个问题:

  1. 边界条件处理贼麻烦,我自己写的时候也注意到了;(但这不是导致超时的原因)

只要改一下DP数组的定义即可:存储以(0,0)为起点,到(i-1, j-1)的数组之和。因此DP数组的长宽都要加1;

对于第二个问题:

  1. 处理超时,因为我每次要算一遍DP。

将DP数组计算的过程放在__init__下面,总是只计算一次,然后重复调用其结果即可/

修改以后的代码如下,明显简洁很多!

class NumMatrix:def __init__(self, matrix: List[List[int]]):self.matrix = matrixself.dp = self.sumFromLeftCorner()def sumFromLeftCorner(self):R, C = len(self.matrix), len(self.matrix[0])dp = [[0 for j in range(C+1)] for i in range(R+1)]for i in range(1, R+1):for j in range(1, C+1):dp[i][j] = dp[i-1][j] + dp[i][j-1] - dp[i-1][j-1] + self.matrix[i-1][j-1]return dpdef sumRegion(self, row1: int, col1: int, row2: int, col2: int) -> int:return self.dp[row2+1][col2+1] - self.dp[row1][col2+1] - self.dp[row2+1][col1] + self.dp[row1][col1]
http://www.khdw.cn/news/55281.html

相关文章:

  • 可以做雷达图的网站珠海网络推广公司
  • 抖音怎么挂小程序赚钱保定网站seo
  • 专业建站公司费用蓝牙耳机网络营销推广方案
  • 沙井网站优化seo如何优化排名
  • 一个域名可以做几个网站吗爱站关键词查询
  • 内网网站开发如何建立免费公司网站
  • 网站开发和app开发长沙做优化的公司
  • 营销型网站案例公司网站制作流程
  • 网站里的聊天怎么做的百度账号购买网站
  • php wordpress乱码内部优化
  • 奉化网站建设河南今日头条最新消息
  • 邯郸网站建设联系电话我的百度网盘登录入口
  • 做照片书哪个网站好sem优化师是什么意思
  • 网易企业邮箱后缀怎么设置搜狗seo软件
  • 制作网站后台种子搜索神器在线搜
  • 深圳 经营性网站备案四川省最新疫情情况
  • 手机外贸网站建设猪八戒网接单平台
  • 网站设计推广方案小吴seo博客
  • 建设网站建站公司新东方
  • 网站降权查询工具廊坊seo排名外包
  • 万网做的网站咋样网络营销怎么做推广
  • 洛龙区网站制作建设费用查域名备案
  • 做龙之向导网站有用吗广告网站留电话不用验证码
  • 湖北营销型网站建设多少钱企业网址
  • 广州旅游网站建设百度推广账户登录首页
  • seo整站优化外包公司下载百度2023最新版安装
  • 无锡网站制作高端排名优化方案
  • 百度推广网站建设广州疫情最新消息
  • 郑州做网站那家好友情链接系统
  • 虚拟主机名词解释抖音搜索优化