张悠雨《魅惑》:一场穿越时空的音乐盛宴,让你沉醉于极致的感官体验

核心内容摘要

69鉂屸潓鉂孒D:解锁未知,预见未来,一场颠覆性的视听盛宴
欧美成人精品:探索视觉与心灵的双重盛宴

网站你懂我意思吧:不止于心照不宣的数字暗语

题目描述在给定的m x n网格grid中每个单元格可以有以下三个值之一值0代表空单元格值1代表新鲜橘子值2代表腐烂的橘子。

每分钟腐烂的橘子周围 4 个方向上相邻的新鲜橘子都会腐烂。

返回直到单元格中没有新鲜橘子为止所必须经过的最小分钟数。

如果不可能返回-1。

题目思路这是通用的BFS思路关于图和树都可以用如二叉树的右视图计算二叉树的层数等题目depth 0 # 记录遍历到第几层 while queue 非空: depth n queue 中的元素个数 循环 n 次: node queue.pop() for node 的所有相邻结点 m: if m 未访问过: queue.push(m)

代码及详细注释class Solution { public: int orangesRotting(vectorvectorint grid) { //

计算腐烂橘子和好橘子并把腐烂橘子全都入队表示0min时刻 int count0; queuepairint,int q; int M grid.size(); int N grid[0].size(); for(int i 0;iM-1;i){ for(int j 0;jN-1;j){ if(grid[i][j]

{ count;//好橘子总数 } else if(grid[i][j]

{ q.push({i,j}); } } } if(count

return 0; int round 0;//返回的结果 int fresh 0; while(fresh count !q.empty()){//注意这个条件最后个新鲜橘子即将被腐烂的状态grid[i][j]2fresh count了然后入队列被腐烂的橘子队列不为空还会进行一次判断. int n q.size(); round; while(n

{ int i q.front().first; int j q.front().second; q.pop(); if(i-10 grid[i-1][j]

{//top //污染橘子 fresh; grid[i-1][j]2; q.push({i-1,j}); } if(i1M-1 grid[i1][j]

{//down fresh; grid[i1][j]2; q.push({i1,j}); } if(j-10 grid[i][j-1]

{//left fresh; grid[i][j-1]2; q.push({i,j-1}); } if(j1N-1 grid[i][j1]

{//right fresh; grid[i][j1]2; q.push({i,j1}); } n--; } } if(count-fresh!

{ return -1; } return round; } };

榴莲视频-榴莲视频应用

百度百家号客服电话人工服务

123 123 123 123 123 123 123 123 123 123 123 123 123 123 123 123 123 123 123 123 123 123 123 123 123 123 123 123 123 123 123 123 123 123 123 123 123 123 123 123 123