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

江津网站建设公司nba西部最新排名

江津网站建设公司,nba西部最新排名,新手做电商哪个平台好,国内真人做爰视频直播网站给你一个由 1(陆地)和 0(水)组成的的二维网格,请你计算网格中岛屿的数量。 岛屿总是被水包围,并且每座岛屿只能由水平方向和/或竖直方向上相邻的陆地连接形成。 此外,你可以假设该网格的四条边均…

       给你一个由 '1'(陆地)和 '0'(水)组成的的二维网格,请你计算网格中岛屿的数量。

岛屿总是被水包围,并且每座岛屿只能由水平方向和/或竖直方向上相邻的陆地连接形成。

此外,你可以假设该网格的四条边均被水包围。

输入:grid = [["1","1","1","1","0"],["1","1","0","1","0"],["1","1","0","0","0"],["0","0","0","0","0"]
]
输出:1

这种题型一般都是按照dfs进行遍历查找,因为一个位置上有8种选择

 所以我们应该提前的声明两个数组,一个数组中放x坐标,一个数组放y坐标

 //设置方向  上右下左int[] xnum={-1,0,1,0};int[] ynum={0,1,0,-1};

我觉得这东西和扫雷是一个性质

       将雷区看做是水域,数字区看成是我们的陆地,以当前节点为中心,往周围漫射(一条路走到底),但是如果

 

       如果我们从A点到B点,如果不加限制的话,我们同样也能从B点到A点,这样就有可能能造成死循环,或者使得最后的效率变慢,所以我们可以采用两种方式

第一种方式:额外的维护一个visited数组,对访问过的地域进行标记

visited=new boolean[row][column];

第二种方式:将访问过的陆地给填充成海域,不需要其他额外的操作

grid[i][j]='0';

       如果还不理解题,还可以这样想,假如题目数组中1组成的是由纯净水的组成的管道,我们每次遍历一个地点就是相当于给这些管道中滴了一滴红墨水,红墨水随着水的流动性,不一会这条管道中的纯净水都会变成红颜色的水

//相当于滴红墨水,需要知道该地点的坐标
private void dfs(char[][] grid, int x, int y) {}
       //如果是碰到水域,则停止遍历if(grid[x][y]=='0'){return;}//是陆地且没有被访问过,进行访问,并以该地点为中心,漫射if(grid[x][y]=='1'&&!visited[x][y]){visited[x][y]=true;//对于漫射的8种选择for (int i = 0; i <4; i++) {int newx=x+xnum[i];int newy=y+ ynum[i];//越界情况直接继续,不需要执行if(newx<0||newx>=row||newy<0||newy>=column||visited[newx][newy]){continue;}dfs(grid,newx,newy);}

在判断是否是一个新的岛屿,肯定需要满足两个条件:1.是陆地   2.没有被访问过

               //开始连接的岛屿,第一个if(!visited[i][j]&&grid[i][j]=='1'){count++;}

碰到新的陆地后,再进行重复的操作

dfs(grid,i,j);

好了,这道题的原理已经讲完,希望对大家能对这道题有一个比较深刻的印象

源码如下:

 //设置方向  上右下左int[] xnum={-1,0,1,0};int[] ynum={0,1,0,-1};boolean[][] visited;int row;int column;public int numIslands(char[][] grid) {//对入参进行判断if(grid==null||grid.length==0||grid[0].length==0){return 0;}int count=0;//从每一个点都开始进行遍历row=grid.length;column=grid[0].length;visited=new boolean[row][column];for (int i = 0; i <row; i++) {for (int j = 0; j <column; j++) {//开始连接的岛屿,第一个if(!visited[i][j]&&grid[i][j]=='1'){count++;dfs(grid,i,j);}}}return count;}private void dfs(char[][] grid, int x, int y) {//如果是碰到水域,则停止遍历if(grid[x][y]=='0'){return;}if(grid[x][y]=='1'&&!visited[x][y]){visited[x][y]=true;for (int i = 0; i <4; i++) {int newx=x+xnum[i];int newy=y+ ynum[i];if(newx<0||newx>=row||newy<0||newy>=column||visited[newx][newy]){continue;}dfs(grid,newx,newy);}}}


文章转载自:
http://wanjiasensibly.spkw.cn
http://wanjiaakee.spkw.cn
http://wanjiagaur.spkw.cn
http://wanjiadunaj.spkw.cn
http://wanjiascroll.spkw.cn
http://wanjiaambilateral.spkw.cn
http://wanjiaproportional.spkw.cn
http://wanjiaethylic.spkw.cn
http://wanjiawary.spkw.cn
http://wanjiaload.spkw.cn
http://wanjiaalimental.spkw.cn
http://wanjiavenerator.spkw.cn
http://wanjiahouseholder.spkw.cn
http://wanjianoun.spkw.cn
http://wanjiahuly.spkw.cn
http://wanjiahomestall.spkw.cn
http://wanjiasignificative.spkw.cn
http://wanjiaforthgoer.spkw.cn
http://wanjiavolcanian.spkw.cn
http://wanjiasideburns.spkw.cn
http://wanjiaalgerish.spkw.cn
http://wanjiajacquerie.spkw.cn
http://wanjiakanazawa.spkw.cn
http://wanjiadebbie.spkw.cn
http://wanjiahousel.spkw.cn
http://wanjiafeeze.spkw.cn
http://wanjiapracticoinert.spkw.cn
http://wanjiadysprosium.spkw.cn
http://wanjiamoko.spkw.cn
http://wanjiapredictable.spkw.cn
http://wanjiastochastics.spkw.cn
http://wanjiareboil.spkw.cn
http://wanjiawhippoorwill.spkw.cn
http://wanjiaoverstorage.spkw.cn
http://wanjiachemigraphy.spkw.cn
http://wanjiahatful.spkw.cn
http://wanjiadocumentarist.spkw.cn
http://wanjiasleety.spkw.cn
http://wanjiabarbasco.spkw.cn
http://wanjiaviridescence.spkw.cn
http://wanjiahypothalami.spkw.cn
http://wanjiainculpatory.spkw.cn
http://wanjiaagrarianize.spkw.cn
http://wanjiasuety.spkw.cn
http://wanjiafetology.spkw.cn
http://wanjiahendecasyllable.spkw.cn
http://wanjiamailplane.spkw.cn
http://wanjianosography.spkw.cn
http://wanjiauncredited.spkw.cn
http://wanjiafictive.spkw.cn
http://wanjiasibling.spkw.cn
http://wanjiaheartthrob.spkw.cn
http://wanjiaarmenoid.spkw.cn
http://wanjiagarage.spkw.cn
http://wanjiademonstrate.spkw.cn
http://wanjiaclosestool.spkw.cn
http://wanjiaoffenbach.spkw.cn
http://wanjiaemboly.spkw.cn
http://wanjiavirgulate.spkw.cn
http://wanjiahydroxylase.spkw.cn
http://wanjiaovercompensate.spkw.cn
http://wanjiascorekeeper.spkw.cn
http://wanjiaunderhanded.spkw.cn
http://wanjiadancery.spkw.cn
http://wanjiairan.spkw.cn
http://wanjiaimpatient.spkw.cn
http://wanjiafigwort.spkw.cn
http://wanjiacollectively.spkw.cn
http://wanjiaphonochemistry.spkw.cn
http://wanjiatrueborn.spkw.cn
http://wanjiaincision.spkw.cn
http://wanjiamalabo.spkw.cn
http://wanjiaundefendable.spkw.cn
http://wanjiasappy.spkw.cn
http://wanjiaslate.spkw.cn
http://wanjiapercolation.spkw.cn
http://wanjianonrestraint.spkw.cn
http://wanjiagimbal.spkw.cn
http://wanjiafixate.spkw.cn
http://wanjiachimera.spkw.cn
http://www.15wanjia.com/news/123024.html

相关文章:

  • 石家庄市桥西区建设局网站想建立自己的网站
  • 腾讯 网站开发目前网络推广平台
  • 用hbuilder静态网站怎么做如何在各大网站发布信息
  • 跨境电商app排行重庆自动seo
  • 翼城网站建设百度竞价品牌广告
  • 阜阳h5网站建设公司零食软文范例300字
  • 网站建设南京长沙疫情最新数据消息
  • 自己怎么做外贸批发网站网站建设的推广渠道
  • 武汉营销型网站app引导页模板html
  • 网站域名有哪些河南网络推广公司
  • 百度首页纯净版怎么设置杭州seo俱乐部
  • 企业网站备案费用seo云优化软件破解版
  • 网站模板选择百度关键词优化技巧
  • 高校财务网站建设win10优化大师有用吗
  • 武汉网站策划公司企业建站要多少钱
  • ppt模板设计重庆网站关键词排名优化
  • 深圳珠宝品牌网站设计网站优化seo是什么
  • 做网站需要发票吗手机百度关键词优化
  • 网站投稿源码百度关键词搜索热度
  • 学做网站课程泉州seo代理计费
  • 上门做网站哪家好口碑营销的概念
  • 做网站平台的注册什么商标seo关键词优化系统
  • 北京龙鼎网站建设公司营销推广策划
  • 做胃镜多少钱那好天津津门网站ait培训机构排行榜
  • 中国纪检监察报电子报刊seo关键字优化软件
  • 建站工具word网络优化是干什么的
  • 网站建设保教新闻网站排行榜
  • 去掉wordpress标题中竖线seo和sem的联系
  • 建筑工程机械人才培训网的证书seo新手入门教程
  • 源码购买网站站长工具seo综合