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

wordpress详情页图片放大优化步骤

wordpress详情页图片放大,优化步骤,做一名网站编辑要具备什么资格,湖南网站建设360o前言:前段时间论文开题落下了很多进度,今天开始会尽快赶上 99.岛屿数量 深搜 思路:对地图进行遍历遇到一个没有遍历过的陆地节点,计数器就1,并把该节点所能遍历到的陆地都标记上;遇到标记过的陆地节点和海…

前言:前段时间论文开题落下了很多进度,今天开始会尽快赶上

99.岛屿数量 深搜

思路:对地图进行遍历遇到一个没有遍历过的陆地节点,计数器就+1,并把该节点所能遍历到的陆地都标记上;遇到标记过的陆地节点和海洋节点的时候直接跳过。

代码如下:

import java.util.Scanner;
public class Main{//定义前进的方向public static int[][] dir={{0,1},{1,0},{-1,0},{0,-1}};//深度搜索函数public static void dfs(boolean[][] visited,int[][] grid,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 || nextY<0 || nextX>=grid.length || nextY>=grid[0].length) continue;if(!visited[nextX][nextY] && grid[nextX][nextY]==1){visited[nextX][nextY]=true;dfs(visited,grid,nextX,nextY);}}}public static void main (String[] args) {//构建地图Scanner scan = new Scanner(System.in);int n=scan.nextInt();int m=scan.nextInt();int[][] grid=new int[n][m];for(int i=0;i<n;i++){for(int j=0;j<m;j++){grid[i][j]=scan.nextInt();}}//判断是否为岛屿int result=0;boolean[][] visited=new boolean[n][m];for(int i=0;i<n;i++){for(int j=0;j<m;j++){if(!visited[i][j] && grid[i][j]==1){result++;visited[i][j]=true;dfs(visited,grid,i,j);}}}System.out.println(result);}
}

99.岛屿数量 广搜

注意:要在节点加入队列时就标记走过,如果从队列拿出来的时候再标记走过就会导致很多节点重复加入队列。

广度搜索使用队列存放下一层搜索的节点,与DFS的区别是不需要调用自身,把队列中的元素遍历完即可。

代码如下:

import java.util.*;
class Pair{int x;int y;public Pair(int x, int y) {this.x = x;this.y = y;}
}public class Main{//定义前进的方向public static int[][] dir={{0,1},{1,0},{-1,0},{0,-1}};public static void bfs(boolean[][] visited,int[][] grid,int x,int y){Queue<Pair> queue=new LinkedList<>();queue.add(new Pair(x,y));visited[x][y]=true;while(!queue.isEmpty()){Pair cur=queue.poll();int curX=cur.x;int curY=cur.y;for(int i=0;i<4;i++){int nextX=curX+dir[i][0];int nextY=curY+dir[i][1];if(nextX<0 || nextY<0 || nextX>=grid.length || nextY>=grid[0].length) continue;if(!visited[nextX][nextY] && grid[nextX][nextY]==1){queue.add(new Pair(nextX,nextY));visited[nextX][nextY]=true;}}}}public static void main (String[] args) {Scanner scan = new Scanner(System.in);int n=scan.nextInt();int m=scan.nextInt();int[][] grid=new int[n][m];for(int i=0;i<n;i++){for(int j=0;j<m;j++){grid[i][j]=scan.nextInt();}}int result=0;boolean[][] visited=new boolean[n][m];for(int i=0;i<n;i++){for(int j=0;j<m;j++){if(!visited[i][j] && grid[i][j]==1){result++;bfs(visited,grid,i,j);}}}System.out.println(result);}
}

100.岛屿的最大面积

思路:只需要在标记一个陆地节点周边所有陆地节点时对这个岛屿的面积计数即可,最后比较获得最大的面积。使用全局静态变量count来计数。

dfs只处理下一个节点,即在主函数遇到岛屿就计数为1,dfs处理接下来的相邻陆地.

代码如下:

import java.util.Scanner;
public class Main{//定义前进的方向public static int[][] dir={{0,1},{1,0},{-1,0},{0,-1}};public static int count;//深度搜索函数public static void dfs(boolean[][] visited,int[][] grid,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 || nextY<0 || nextX>=grid.length || nextY>=grid[0].length) continue;if(!visited[nextX][nextY] && grid[nextX][nextY]==1){visited[nextX][nextY]=true;count++;dfs(visited,grid,nextX,nextY);}}}public static void main (String[] args) {//构建地图Scanner scan = new Scanner(System.in);int n=scan.nextInt();int m=scan.nextInt();int[][] grid=new int[n][m];for(int i=0;i<n;i++){for(int j=0;j<m;j++){grid[i][j]=scan.nextInt();}}//判断是否为岛屿boolean[][] visited=new boolean[n][m];int result=0;for(int i=0;i<n;i++){for(int j=0;j<m;j++){if(!visited[i][j] && grid[i][j]==1){count=1;visited[i][j]=true;dfs(visited,grid,i,j);}if(count>result) result=count;}}System.out.println(result);}
}
http://www.15wanjia.com/news/37829.html

相关文章:

  • 昆明企业建站程序win7优化大师官网
  • 做软件项目需不需要有网站怎样上百度做广告
  • 食品 骏域网站建设专家成都网站快速排名优化
  • 编程和做网站有关系吗扬州seo优化
  • 网站建设平台软件哪个好用seo外链代发
  • 做网站宣传多少钱陕西网站推广公司
  • 网站制作要用哪些软件有哪些seo优化培训班
  • 独立的网站app推广渠道有哪些
  • 西藏自治区建设厅教育网站优化设计答案四年级上册语文
  • 网站首页排版设计美国今天刚刚发生的新闻
  • 网站要咋做网站制作 网站建设
  • caozi.com网站建设中网站制作过程
  • 网站url命名规则昆明百度推广开户费用
  • 如何建设一个个人网站济南优化网页
  • 旅游电子商务网站的建设方案鞍山网络推广
  • 怎么利用b2b网站开发客户东莞做网站的联系电话
  • 什么网站有教做变蛋的如何在百度上发广告
  • 做网站西宁关键词首页排名优化
  • 本地网站开发环境搭建日本今日新闻头条
  • 做网站可以盈利吗seo做得比较好的公司
  • 网站开发台州短视频剪辑培训班多少钱
  • 网站建设好公司哪家好百度推广app下载
  • 网站开发岗位要求上海有名网站建站开发公司
  • 满屏滚动网站咋做百度指数的需求指数
  • 怎么做盗文网站seo外链发布平台有哪些
  • 济南网站建设泰观网络人工智能培训机构排名
  • 用qq做网站客服简述什么是seo
  • 天津建设合同备案网站谷歌广告优化师
  • gbk编码网站网站推广计划方案
  • 唐山网站托管谷歌seo 优化