您的位置:首页 > 汽车 > 新车 > 网络营销推广的成功案例_桂林网络平台开发公司_百度推广深圳分公司_seo 推广怎么做

网络营销推广的成功案例_桂林网络平台开发公司_百度推广深圳分公司_seo 推广怎么做

2024/12/27 19:46:29 来源:https://blog.csdn.net/2301_79232523/article/details/144493475  浏览:    关键词:网络营销推广的成功案例_桂林网络平台开发公司_百度推广深圳分公司_seo 推广怎么做
网络营销推广的成功案例_桂林网络平台开发公司_百度推广深圳分公司_seo 推广怎么做

前言

###我做这类文章一个重要的目的还是给正在学习的大家提供方向和记录学习过程(例如想要掌握基础用法,该刷哪些题?)我的解析也不会做的非常详细,只会提供思路和一些关键点,力扣上的大佬们的题解质量是非常非常高滴!!!


习题

1.水域大小

题目链接:面试题 16.19. 水域大小 - 力扣(LeetCode)

分析:简单的dfs

class Solution {int[][] land;int n,m;int[][] flag;ArrayList<Integer> list = new ArrayList<>();int flag2 = 0;public int[] pondSizes(int[][] land) {this.land = land;n = land.length;m = land[0].length;flag = new int[n][m];for(int i = 0;i<n;i++){for(int j = 0;j<m;j++){if(flag[i][j]==0&&land[i][j]==0){flag2 = 0;recursion(i,j);//  System.out.println("------------------------");list.add(flag2);}}}flag2 = 0;int[] ans = new int[list.size()];for(int a:list){ans[flag2++] = a;}Arrays.sort(ans);return ans;}public void recursion(int x,int y){// System.out.println(x+"          "+y);flag[x][y] = 1;flag2++;if(x+1<n&&land[x+1][y]==0&&flag[x+1][y]==0){recursion(x+1,y);}if(x-1>=0&&land[x-1][y]==0&&flag[x-1][y]==0){recursion(x-1,y);}if(y+1<m&&land[x][y+1]==0&&flag[x][y+1]==0){recursion(x,y+1);}if(y-1>=0&&land[x][y-1]==0&&flag[x][y-1]==0){recursion(x,y-1);}if(x+1<n&&y+1<m&&land[x+1][y+1]==0&&flag[x+1][y+1]==0){recursion(x+1,y+1);}if(x+1<n&&y-1>=0&&land[x+1][y-1]==0&&flag[x+1][y-1]==0){recursion(x+1,y-1);}if(x-1>=0&&y+1<m&&land[x-1][y+1]==0&&flag[x-1][y+1]==0){recursion(x-1,y+1);}if(x-1>=0&&y-1>=0&&land[x-1][y-1]==0&&flag[x-1][y-1]==0){recursion(x-1,y-1);}}
}

2.主题空间

题目链接:LCS 03. 主题空间 - 力扣(LeetCode)

题面:

分析:dfs,只不过多一些考虑情况 

代码:

class Solution {int n,m;int ans = 0;char[][] map;int[][] flag;int flag2 = 0;int islian = 0;public int largestArea(String[] grid) {n = grid.length;m = grid[0].length();map = new char[n][m];flag = new int[n][m];int count = 0;for(String str:grid){map[count++] = str.toCharArray();}for(int i = 1;i<n-1;i++){for(int j = 1;j<m-1;j++){if(map[i][j]!='0'&&flag[i][j]==0){flag2 = 0;islian = 0;recursion(i,j,map[i][j]);if(islian==0){ans = Math.max(ans,flag2);}}}            }return ans;}public void recursion(int x,int y,char u){flag2++;flag[x][y] = 1;if(x==0||x==n-1||y==0||y==m-1)islian = 1;if(x+1<n){if(map[x+1][y]==u&&flag[x+1][y]==0){recursion(x+1,y,u);}if(map[x+1][y]=='0')islian=1;}if(x-1>=0){if(map[x-1][y]==u&&flag[x-1][y]==0){recursion(x-1,y,u);}if(map[x-1][y]=='0')islian = 1;}if(y+1<m){if(map[x][y+1]==u&&flag[x][y+1]==0){recursion(x,y+1,u);}if(map[x][y+1]=='0')islian = 1;}if(y-1>=0){if(map[x][y-1]==u&&flag[x][y-1]==0){recursion(x,y-1,u);}if(map[x][y-1]=='0')islian = 1;}}
}

后言

上面是力扣图论专题,下一篇是其他的习题,希望有所帮助,一同进步,共勉!

版权声明:

本网仅为发布的内容提供存储空间,不对发表、转载的内容提供任何形式的保证。凡本网注明“来源:XXX网络”的作品,均转载自其它媒体,著作权归作者所有,商业转载请联系作者获得授权,非商业转载请注明出处。

我们尊重并感谢每一位作者,均已注明文章来源和作者。如因作品内容、版权或其它问题,请及时与我们联系,联系邮箱:809451989@qq.com,投稿邮箱:809451989@qq.com