日韩性视频-久久久蜜桃-www中文字幕-在线中文字幕av-亚洲欧美一区二区三区四区-撸久久-香蕉视频一区-久久无码精品丰满人妻-国产高潮av-激情福利社-日韩av网址大全-国产精品久久999-日本五十路在线-性欧美在线-久久99精品波多结衣一区-男女午夜免费视频-黑人极品ⅴideos精品欧美棵-人人妻人人澡人人爽精品欧美一区-日韩一区在线看-欧美a级在线免费观看

歡迎訪問 生活随笔!

生活随笔

當前位置: 首頁 > 编程资源 > 编程问答 >内容正文

编程问答

【leetcode】Set Matrix Zeroes(middle)

發布時間:2024/4/17 编程问答 38 豆豆
生活随笔 收集整理的這篇文章主要介紹了 【leetcode】Set Matrix Zeroes(middle) 小編覺得挺不錯的,現在分享給大家,幫大家做個參考.

Given a?m?x?n?matrix, if an element is 0, set its entire row and column to 0. Do it in place.

?

思路:不能用額外空間,就用矩陣的第一行和第一列來標記這一行或這一列是否需要置0. 用兩個bool量記錄第一行和第一列是否需要置0

大神的代碼和我的代碼都是這個思路,但是我在畫0的時候是行列分開處理的,大神的代碼是一起處理的

void setZeroes(vector<vector<int> > &matrix) {if(matrix.empty())return;bool iszero1 = false; //第一行是否全0bool iszero2 = false; //第一列是否全0//第一行 第一列單獨拿出來做標記for(int j = 0; j < matrix[0].size(); j++){if(matrix[0][j] == 0) iszero1 = true;}for(int i = 0; i < matrix.size(); i++){if(matrix[i][0] == 0) iszero2 = true;}for(int i = 1; i < matrix.size(); i++){for(int j = 1; j < matrix[0].size(); j++){//如果數值為0,把對應那一行的第一個 和 那一列的第一個數字置為0if(matrix[i][j] == 0){matrix[0][j] = 0;matrix[i][0] = 0;}}}//分行列處理//先不考慮[0][0] 位置 如果某一行第一個為0,整行置0for(int i = 1; i < matrix.size(); i++){if(matrix[i][0] == 0){for(int j = 1; j < matrix[0].size(); j++){matrix[i][j] = 0;}}}for(int j = 1; j < matrix[0].size(); j++){if(matrix[0][j] == 0){for(int i = 1; i < matrix.size(); i++){matrix[i][j] = 0;}}}if(iszero1){for(int j = 0; j < matrix[0].size(); j++){matrix[0][j] = 0;}}if(iszero2){for(int i = 0; i < matrix.size(); i++){matrix[i][0] = 0;}}return;}

?

?

大神的代碼:

public void setZeroes(int[][] matrix) {int rownum = matrix.length;if (rownum == 0) return;int colnum = matrix[0].length;if (colnum == 0) return;boolean hasZeroFirstRow = false, hasZeroFirstColumn = false;// Does first row have zero?for (int j = 0; j < colnum; ++j) {if (matrix[0][j] == 0) {hasZeroFirstRow = true;break;}}// Does first column have zero?for (int i = 0; i < rownum; ++i) {if (matrix[i][0] == 0) {hasZeroFirstColumn = true;break;}}// find zeroes and store the info in first row and columnfor (int i = 1; i < matrix.length; ++i) {for (int j = 1; j < matrix[0].length; ++j) {if (matrix[i][j] == 0) {matrix[i][0] = 0;matrix[0][j] = 0;}}}// set zeroes except the first row and column 一起處理的for (int i = 1; i < matrix.length; ++i) {for (int j = 1; j < matrix[0].length; ++j) {if (matrix[i][0] == 0 || matrix[0][j] == 0) matrix[i][j] = 0;}}// set zeroes for first row and column if neededif (hasZeroFirstRow) {for (int j = 0; j < colnum; ++j) {matrix[0][j] = 0;}}if (hasZeroFirstColumn) {for (int i = 0; i < rownum; ++i) {matrix[i][0] = 0;}} }

?

轉載于:https://www.cnblogs.com/dplearning/p/4344825.html

總結

以上是生活随笔為你收集整理的【leetcode】Set Matrix Zeroes(middle)的全部內容,希望文章能夠幫你解決所遇到的問題。

如果覺得生活随笔網站內容還不錯,歡迎將生活随笔推薦給好友。

主站蜘蛛池模板: 欧美老肥妇做.爰bbww视频 | 狂野少女电影在线观看国语版免费 | 亚洲国产精品久久久 | 欧美黄色片视频 | 欧美乱做爰xxxⅹ久久久 | 亚洲jizzjizz | 婷婷中文字幕在线 | aaa色| 国产又粗又爽视频 | 91草视频| 偷拍综合网 | 中文字幕一区二区人妻痴汉电车 | 国产中文字幕乱人伦在线观看 | 91欧美激情一区二区三区成人 | 亚洲第8页 | 色婷av| 在线黄色免费网站 | 国产欧美日韩在线观看 | 亚洲狼人在线 | 玖玖爱av| 亚洲黄色大片 | 午夜窝窝 | 国产精品视频亚洲 | 国产精品色图 | 国产成人免费av一区二区午夜 | 国产一区二区三区中文字幕 | 国产乱人乱精一区二视频国产精品 | 99久草| 欧美被狂躁喷白浆精品 | 久久综合日本 | 人妖性生活视频 | 免费看黄网站在线观看 | 999视频 | 超碰在线a| 黄色av网站在线观看 | 欧美一级做a爰片免费视频 成人激情在线观看 | 亚洲欧美综合精品久久成人 | 中文字幕制服诱惑 | 日韩人体视频 | 91黄色在线观看 | 欧美变态口味重另类在线视频 | 夜夜夜影院 | 激情国产精品 | 欧美老肥妇做爰bbww | 欧美女同在线 | 亚洲精品久久久久中文字幕二区 | 一区二区三区中文字幕在线观看 | 高清精品xnxxcom | 国产三区视频 | 51福利视频| 日韩小视频网站 | 青娱乐免费在线视频 | 99久久国产免费 | 色哟哟免费视频 | 鬼灭之刃柱训练篇在线观看 | 爱爱视频一区 | 亚洲网站视频 | 99久久亚洲精品日本无码 | 永久在线观看 | 羞辱狗奴的句子有哪些 | 欧美乱轮视频 | 国产大学生自拍视频 | 粉嫩av一区二区三区 | 亚洲女成人图区 | 中文字幕在线播放 | 日韩欧美视频免费观看 | 极品美女高潮出白浆 | av在线毛片 | 无码人妻丰满熟妇奶水区码 | 亚洲成av人在线观看 | 婷婷久久久 | 日本特黄特黄刺激大片 | 激情五月色综合国产精品 | 18成人免费观看网站 | 欧美日韩3p | 欧美做受高潮中文字幕 | 第四色视频 | 麻豆久久久久久 | 亚洲av区无码字幕中文色 | 91精品国产乱码久久 | 337p日本欧洲亚洲鲁鲁 | 亚洲成人一区二区 | 日韩视频播放 | 夜夜嗨av一区二区三区 | 色www.| 亚洲欧洲日韩国产 | 国产精品嫩 | 国产成人午夜高潮毛片 | 成人综合影院 | 日本色www| 日本亚洲网站 | 国产无码精品在线播放 | 夜夜艹天天干 | 成人欧美一区二区三区黑人免费 | 成年黄色片 | 亚洲在线免费视频 | 免费看片色 | 国产av天堂无码一区二区三区 | 人妻视频一区二区三区 |