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

做网站网页的公司网站建设好还需要续费吗

做网站网页的公司,网站建设好还需要续费吗,小红书seo优化,智慧团建登录官网手机版99.岛屿数量 深搜 题目链接:99. 岛屿数量 文章讲解:代码随想录 思路: 先将岛屿数据存储到二维矩阵,遍历二维矩阵,遇到1,则统计数量1,然后将该岛屿四个方向的岛屿都标为已访问。 记得处理边界情…

99.岛屿数量 深搜

题目链接:99. 岛屿数量

文章讲解:代码随想录

思路:

先将岛屿数据存储到二维矩阵,遍历二维矩阵,遇到1,则统计数量+1,然后将该岛屿四个方向的岛屿都标为已访问。

记得处理边界情况

#include <iostream>
#include <vector>
using namespace std;
int dir[4][2]={{0,1},{0,-1},{1,0},{-1,0}};
void dfs(vector<vector<int>>graph,vector<vector<bool>>&isvisited,int x,int y){for(int i=0;i<4;i++){//考虑四个方向int nextx=x+dir[i][0];int nexty=y+dir[i][1];//边界检查if(nextx<1||nextx>=graph.size()||nexty<1||nexty>=graph[0].size())continue;if(graph[nextx][nexty]==1&&!isvisited[nextx][nexty]){isvisited[nextx][nexty]=true;dfs(graph,isvisited,nextx,nexty);}}  
}int main(){int n,m,x;cin>>n>>m;vector<vector<int>>graph(n+1,vector<int>(m+1,1));vector<vector<bool>>isvisited(n+1,vector<bool>(m+1,false));for(int i=1;i<=n;i++){                  //用二维矩阵存储图for(int j=1;j<=m;j++){cin>>x;graph[i][j]=x;}}int result=0;for(int i=1;i<=n;i++){for(int j=1;j<=m;j++){if(!isvisited[i][j]&&graph[i][j]){isvisited[i][j]=true;result++;dfs(graph,isvisited,i,j);  //将相连的陆地标记为已访问}}}cout<<result<<endl;
}

 

99.岛屿数量 广搜

题目链接:99. 岛屿数量

文章讲解:代码随想录

 

#include <iostream>
#include <vector>
#include <queue>
using namespace std;
int dir[4][2]={{0,1},{0,-1},{1,0},{-1,0}};
void bfs(vector<vector<int>>graph,vector<vector<bool>>&isvisited,int x,int y){queue<pair<int,int>>mq;mq.push({x,y});    //注意pair的用法while(!mq.empty()){auto current = mq.front();  // ✅ 取出当前节点!!!!!!!!!!mq.pop();int curx = current.first;int cury = current.second;for(int i=0;i<4;i++){//考虑四个方向int nextx=curx+dir[i][0];int nexty=cury+dir[i][1];if(nextx<1||nextx>=graph.size()||nexty<1||nexty>=graph[0].size())continue;if(graph[nextx][nexty]==1&&!isvisited[nextx][nexty]){isvisited[nextx][nexty]=true;mq.push({nextx,nexty});}}}}int main(){int n,m,x;cin>>n>>m;vector<vector<int>>graph(n+1,vector<int>(m+1,1));vector<vector<bool>>isvisited(n+1,vector<bool>(m+1,false));for(int i=1;i<=n;i++){                  //用二维矩阵存储图for(int j=1;j<=m;j++){cin>>x;graph[i][j]=x;}}int result=0;for(int i=1;i<=n;i++){for(int j=1;j<=m;j++){if(!isvisited[i][j]&&graph[i][j]){isvisited[i][j]=true;result++;bfs(graph,isvisited,i,j);  //将相连的陆地标记为已访问}}}cout<<result<<endl;
}

广度优先搜索遍历:

新建一个队列,当前节点入队,

while队列不为空,获取队首节点,处理当前节点逻辑,符合条件的入队。

100.岛屿的最大面积

题目链接:100. 岛屿的最大面积

文章讲解:代码随想录

思路:

基本解法与上题一样

找到一个岛屿 然后用广度或者深度优先搜索去遍历周围相连的岛屿,每有一个相连,面积加1

#include <iostream>
#include <vector>
#include <queue>
using namespace std;
int dir[4][2]={{0,1},{0,-1},{1,0},{-1,0}};
//深度优先
void dfs(vector<vector<int>>graph,vector<vector<bool>>&visited,int &area,int x, int y){for(int i=0;i<4;i++){int nextx=x+dir[i][0];int nexty=y+dir[i][1];if(nextx<0||nextx>=graph.size()||nexty<0||nexty>graph[0].size()) continue;if(graph[nextx][nexty]==1&&!visited[nextx][nexty]){visited[nextx][nexty]=true;area++;dfs(graph,visited,area,nextx,nexty);}}
}
//广度优先
void bfs(vector<vector<int>>graph,vector<vector<bool>>&visited,int &area,int x, int y){queue<pair<int,int>>mq;    mq.push({x,y});                //当前节点入队while(!mq.empty()){auto curnode=mq.front();   //队首节点出队mq.pop();int curx=curnode.first;int cury=curnode.second;for(int i=0;i<4;i++){     //处理当前节点有联系的int nextx=curx+dir[i][0];int nexty=cury+dir[i][1];if(nextx<0||nextx>=graph.size()||nexty<0||nexty>graph[0].size()) continue;if(graph[nextx][nexty]==1&&!visited[nextx][nexty]){visited[nextx][nexty]=true;area++;mq.push({nextx,nexty});  //有联系的入队}}}
}int main(){int n,m;cin>>n>>m;vector<vector<int>>graph(n+1,vector<int>(m+1,0));for(int i=1;i<=n;i++){for(int j=1;j<=m;j++){cin>>graph[i][j];}}vector<vector<bool>>visited(n+1,vector<bool>(m+1,false));int maxArea=0;for(int i=1;i<=n;i++){for(int j=1;j<=m;j++){if(graph[i][j]==1&&!visited[i][j]){int area=1;visited[i][j]=true;bfs(graph,visited,area,i,j);// dfs(graph,visited,area,i,j);maxArea=max(maxArea,area);}}}cout<<maxArea<<endl;
}


文章转载自:

http://ySkbVr8E.bpmth.cn
http://G2F9RGnZ.bpmth.cn
http://rnEEFqVg.bpmth.cn
http://rBpwrMVs.bpmth.cn
http://CncCuhxa.bpmth.cn
http://XNuChUUf.bpmth.cn
http://LtVTjvtK.bpmth.cn
http://svvwv82r.bpmth.cn
http://CQ3M5IOl.bpmth.cn
http://kCLUauUN.bpmth.cn
http://54GjWicj.bpmth.cn
http://RsxErA4R.bpmth.cn
http://hfWKFFpB.bpmth.cn
http://A3UTh8m5.bpmth.cn
http://jJooOcCM.bpmth.cn
http://mFSPSQli.bpmth.cn
http://K3qTfYBi.bpmth.cn
http://82DI2MlS.bpmth.cn
http://7E5T7gQN.bpmth.cn
http://r0Rj5qh8.bpmth.cn
http://XLxZlZXc.bpmth.cn
http://CYGZeLIQ.bpmth.cn
http://cTwyCnvS.bpmth.cn
http://FEXOH2kL.bpmth.cn
http://OOqfpdoY.bpmth.cn
http://vMdqeWsk.bpmth.cn
http://IM1XtpJm.bpmth.cn
http://1u2KUAQ2.bpmth.cn
http://3RgBLRYG.bpmth.cn
http://nvoAOuUI.bpmth.cn
http://www.dtcms.com/wzjs/670557.html

相关文章:

  • 兰州网站制作公司在哪里国家住房和城乡建设部官网
  • 住房和城乡建设部网站科技项目wordpress附件投稿
  • 襄阳大摩网站建设wordpress整站迁移
  • 冷水江网页定制公司网站 seo
  • 岱山县网站建设wordpress系统教程 pdf
  • 浦东做网站的公司网络营销的理论
  • 简述一个商务网站建设的步骤化妆品行业网站建设
  • 品牌营销网站宁波妇科中医哪个好
  • 烟台网站建设地址高清的网站建设
  • 网站建设 美词原创中国工商网注册官网
  • 温州专业营销网站费用长沙网站seo多少钱
  • 大酒店网站源代码常见软件开发模型有哪些
  • 黄石本地做网站的集团公司网站源码php
  • 域名注册网站查询闵行网站开发
  • 英文旅游网站建设wordpress首页不显示
  • 个人主页网站视频网站 阿里云
  • dede网站模板页在什么文件夹宁波网站制作公司哪家好
  • 五合一营销型网站找外包做网站不给代码
  • 佛山 做网站公司网站备案 上线
  • 南充免费推广网站wordpress问答模块
  • joomla 网站建设做网站公司的介绍
  • 168网站建设成都电商网站制作
  • 网站在百度无法验证码怎么办智能建站公司
  • 河南高端网站建设公司aws wordpress ssl
  • 做酒店网站设计常见的微信营销方式有哪些
  • 钢材销售网站建设四川新正路桥建设工程有限公司网站
  • 跨境自建站模板做设计一般在那个网站找图
  • 齐河专业企业网站建设网站按钮特效
  • 做网站服务器 自己电脑还是租简述建设一个网站的具体步骤
  • 上传网站数据库吗腰膝酸软乏力是肾阴虚还是肾阳虚