博客
关于我
强烈建议你试试无所不能的chatGPT,快点击我
695. Max Area of Island(BFS)
阅读量:4180 次
发布时间:2019-05-26

本文共 1130 字,大约阅读时间需要 3 分钟。

题目:求出最大的相邻的1的个数

思路:BFS

class Solution {public:    int BFS(vector
>& grid,int x,int y){ int lenx = grid.size() ,leny = grid[0].size(); int dir[4][2]={
{-1,0},{
1,0},{
0,-1},{
0,1}}; struct Q{ int x; int y; }; Q q[2500]; int sum = 1; q[0].x = x; q[0].y = y; grid[x][y]=0; int l=0,r=1; while(l < r){ Q temp = q[l]; for(int x1=0;x1<4;x1++){ temp.x = q[l].x + dir[x1][0]; temp.y = q[l].y + dir[x1][1]; if(temp.x < 0 || temp.y < 0 || temp.x >= lenx || temp.y >= leny || !grid[temp.x][temp.y]) continue; q[r] = temp; grid[temp.x][temp.y] = 0; sum++; r++; } l++; } return sum; } int maxAreaOfIsland(vector
>& grid) { int max = 0; int lenx = grid.size() ,leny = grid[0].size(); for(int x=0;x
sum?max:sum; } } } return max; }};

转载地址:http://dnrai.baihongyu.com/

你可能感兴趣的文章
C++程序员技术需求规划(发展方向)
查看>>
JNI
查看>>
Cardboard虚拟现实开发初步(二)
查看>>
60个优秀的免费3D模型下载网站
查看>>
Cardboard虚拟现实开发初步(三)
查看>>
Android native和h5混合开发几种常见的hybrid通信方式
查看>>
Vista/Win7 UAC兼容程序开发指南
查看>>
IOS程序开发框架
查看>>
安装jdk的步骤
查看>>
简述JAVA运算符
查看>>
简易ATM源代码及运行结果
查看>>
简述Java中的简单循环
查看>>
用JAVA实现各种乘法表
查看>>
for双重循环实现图形
查看>>
Java类和对象基础
查看>>
简述Java继承和多态
查看>>
Java中Arrays工具类的用法
查看>>
简述JAVA抽象类和接口
查看>>
JAVA常用基础类
查看>>
简述Java异常处理
查看>>