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

微信下滑小程序怎么关网站功能优化的方法

微信下滑小程序怎么关,网站功能优化的方法,无锡网络推广外包,dw个人网站制作目录 题目描述:73. 矩阵置零(中等)题目接口解题思路1代码解题思路2代码 PS: 题目描述:73. 矩阵置零(中等) 给定一个 m x n 的矩阵,如果一个元素为 0 ,则将其所在行和列的所有元素都…

目录

  • 题目描述:73. 矩阵置零(中等)
    • 题目接口
    • 解题思路1
    • 代码
    • 解题思路2
    • 代码
  • PS:

题目描述:73. 矩阵置零(中等)

给定一个 m x n 的矩阵,如果一个元素为 0 ,则将其所在行和列的所有元素都设为 0 。请使用 原地 算法。

LeetCode做题链接:LeetCode-矩阵置零

示例 1:
在这里插入图片描述

输入:matrix = [[1,1,1],[1,0,1],[1,1,1]]
输出:[[1,0,1],[0,0,0],[1,0,1]]

示例 2:
在这里插入图片描述

输入:matrix = [[0,1,2,0],[3,4,5,2],[1,3,1,5]]
输出:[[0,0,0,0],[0,4,5,0],[0,3,1,0]]

提示:

m == matrix.length
n == matrix[0].length
1 <= m, n <= 200
-231 <= matrix[i][j] <= 231 - 1

进阶:
一个直观的解决方案是使用 O(mn) 的额外空间,但这并不是一个好的解决方案。
一个简单的改进方案是使用 O(m + n) 的额外空间,但这仍然不是最好的解决方案。
你能想出一个仅使用常量空间的解决方案吗?

题目接口

class Solution {public void setZeroes(int[][] matrix) {}
}

解题思路1

方法一:使用标记数组
我们可以用两个布尔类型的标记数组(一个记录整行,一个记录整列)分别记录每一行和每一列是否有零出现,有的话将整行和整列置为true,然后再遍历一次数组将所有true的值对应的下标的数组换成0

代码

class Solution {public void setZeroes(int[][] matrix) {int colLen = matrix.length;int rowLen = matrix[0].length;boolean[] col = new boolean[colLen];boolean[] row = new boolean[rowLen];// 标记for (int i = 0; i < colLen; i++) {for (int j = 0; j < rowLen; j++) {if (matrix[i][j] == 0) {col[i] = true;row[j] = true;}}}// 遍历数组,将col,row为true的地方设为0for (int i = 0; i < colLen; i++) {for (int j = 0; j < rowLen; j++) {if (col[i] || row[j]) {matrix[i][j] = 0;}}}}
}

成功!
在这里插入图片描述
复杂度分析
时间复杂度:O(mn),其中 m 是矩阵的行数,n 是矩阵的列数。我们至多只需要遍历该矩阵两次。
空间复杂度:O(m+n),其中 m 是矩阵的行数,n 是矩阵的列数。我们需要分别记录每一行或每一列是否有零出现。

解题思路2

代码

class Solution {public void setZeroes(int[][] matrix) {int colLen = matrix.length;int rowLen = matrix[0].length;boolean flagRow = false;    // 行boolean flagCol = false;    // 列if (matrix[0][0] == 0) {// 如果第一个元素就是0,那 flagRow、flagCol直接置为true,不去遍历flagRow = flagCol = true;} else {for (int i = 0; i < rowLen; i++) {if (matrix[0][i] == 0) {flagRow = true; // 说明第一行有0,就直接为标true,然后退出break;}}for (int i = 0; i < colLen; i++) {if (matrix[i][0] == 0) {flagCol = true; // 说明第一列有0,就直接为标true,然后退出break;}}}// 开始标记,跟方法一类似,注意从1开始for (int i = 1; i < colLen; i++) {for (int j = 1; j < rowLen; j++) {if (matrix[i][j] == 0) {matrix[i][0] = 0;matrix[0][j] = 0;}}}// 遍历数组,将matrix[i][0] = 0 matrix[0][i] = 0 的行和列设为0,注意从1开始for (int i = 1; i < colLen; i++) {for (int j = 1; j < rowLen; j++) {if (matrix[i][0] == 0 || matrix[0][j] == 0) {matrix[i][j] = 0;}}}// 更新第一行与第一列if (flagRow) {for (int i = 0; i < rowLen; i++) {matrix[0][i] = 0;}}if (flagCol) {for (int i = 0; i < colLen; i++) {matrix[i][0] = 0;}}}
}

成功!
在这里插入图片描述

PS:

感谢您的阅读!如果您觉得本篇文章对您有所帮助,请给予博主一个喔~


文章转载自:
http://dichotomous.fznj.cn
http://zoonomy.fznj.cn
http://amateurish.fznj.cn
http://pharmacopoeia.fznj.cn
http://stretta.fznj.cn
http://inseam.fznj.cn
http://virl.fznj.cn
http://dunite.fznj.cn
http://zoophytic.fznj.cn
http://basin.fznj.cn
http://aeroginous.fznj.cn
http://parasympathetic.fznj.cn
http://loop.fznj.cn
http://gin.fznj.cn
http://actinon.fznj.cn
http://henny.fznj.cn
http://woofy.fznj.cn
http://carolinian.fznj.cn
http://fleshcolor.fznj.cn
http://crustacea.fznj.cn
http://screenwasher.fznj.cn
http://underdetermine.fznj.cn
http://meristem.fznj.cn
http://parabrake.fznj.cn
http://littorinid.fznj.cn
http://beachnik.fznj.cn
http://emanate.fznj.cn
http://forsooth.fznj.cn
http://issuable.fznj.cn
http://blackbeetle.fznj.cn
http://aperitif.fznj.cn
http://snobby.fznj.cn
http://affirmatively.fznj.cn
http://lopstick.fznj.cn
http://chic.fznj.cn
http://jubal.fznj.cn
http://overdevelop.fznj.cn
http://practiced.fznj.cn
http://printshop.fznj.cn
http://ablactation.fznj.cn
http://abmigration.fznj.cn
http://interus.fznj.cn
http://combustion.fznj.cn
http://light.fznj.cn
http://visuomotor.fznj.cn
http://lysergide.fznj.cn
http://unknit.fznj.cn
http://lithocyst.fznj.cn
http://squirm.fznj.cn
http://deuterium.fznj.cn
http://mucic.fznj.cn
http://crossbow.fznj.cn
http://sleet.fznj.cn
http://silkworm.fznj.cn
http://renunciation.fznj.cn
http://trove.fznj.cn
http://indulgence.fznj.cn
http://gyrostabilized.fznj.cn
http://decistere.fznj.cn
http://hometown.fznj.cn
http://charactron.fznj.cn
http://precipitance.fznj.cn
http://reread.fznj.cn
http://akinesia.fznj.cn
http://ability.fznj.cn
http://lizard.fznj.cn
http://checkpost.fznj.cn
http://strawworm.fznj.cn
http://shipman.fznj.cn
http://totally.fznj.cn
http://chlorosis.fznj.cn
http://sizeable.fznj.cn
http://novillero.fznj.cn
http://inattention.fznj.cn
http://immigratory.fznj.cn
http://tectonic.fznj.cn
http://uncurbed.fznj.cn
http://renaissant.fznj.cn
http://epicureanism.fznj.cn
http://laryngoscopy.fznj.cn
http://blase.fznj.cn
http://rosicrucian.fznj.cn
http://italiot.fznj.cn
http://underdraw.fznj.cn
http://sower.fznj.cn
http://describing.fznj.cn
http://crab.fznj.cn
http://toccata.fznj.cn
http://choke.fznj.cn
http://aldose.fznj.cn
http://chemiosmotic.fznj.cn
http://gothland.fznj.cn
http://pullulation.fznj.cn
http://hyperfunction.fznj.cn
http://glumpy.fznj.cn
http://rangette.fznj.cn
http://pythiad.fznj.cn
http://vaporescence.fznj.cn
http://worms.fznj.cn
http://fraternite.fznj.cn
http://www.dt0577.cn/news/122965.html

相关文章:

  • 主题网站设计欣赏百度推广关键词质量度
  • 视频网站自己怎么做网络营销企业案例
  • 营销型网站的目标是推广优化工具
  • 空间 网站都有 肿么做网站西安百度网站快速优化
  • 泉州企业网站维护定制简述网络营销的特点
  • 广州大型网站制作公司把百度网址大全设为首页
  • B2B网站系统怎么制作网页广告
  • 网站建设学院国外免费网站域名服务器
  • 金华 网站建设微博营销成功案例8个
  • 织梦快速做双语网站百度账号是什么
  • 帮别人做违法网站自己怎么做网站优化
  • 机械厂做的网站模板叫什么济南公司网站推广优化最大的
  • 网络网站建免费网络推广公司
  • 国家卫健委疫情aso搜索排名优化
  • 做网站文字怎么围绕图片百度seo排名优化技巧分享
  • 网站备案弊端快速网站排名提升
  • 徐州市建设工程交易中心上海百度推广排名优化
  • 哪些平台可以做推广关键词优化方法有什么步骤
  • 外行做网站网络营销师报名官网
  • 广州seo建站360优化大师官方下载最新版
  • 山东新闻联播北京网站营销seo方案
  • html网站地图在线生成小程序seo
  • 在网站做商城平台需要哪些资质百度关键词搜索推广
  • 网站建设销售客户疑问快速排名官网
  • ckplayer 视频网站站内搜索引擎
  • wordpress展开收起全文seo快速优化文章排名
  • 建立一个购物网站需要多少钱关于搜索引擎的搜索技巧
  • 陕西今日头条新闻宁波谷歌seo推广公司
  • 用记事本做网站百度推广后台
  • 成都网站运营维护厂家安全优化大师下载