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

上传的网站打不开公司组织架构图模板

上传的网站打不开,公司组织架构图模板,河北建设信息网站,中关村丰台园200. 岛屿数量 题意 给你一个由 1(陆地)和 0(水)组成的的二维网格,请你计算网格中岛屿的数量。 岛屿总是被水包围,并且每座岛屿只能由水平方向和/或竖直方向上相邻的陆地连接形成。 此外,你…

200. 岛屿数量

题意

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

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

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

题解

简单来看,只要每一个与1上下左右相互连接的就是同一块陆地,那么我们遍历整张图,加入当前点的状态为1,就是有一块陆地了,那么把与他相连的全部赋值为0就可以了,也就是没有价值了

代码


import java.util.*;public class Solution {public static void main(String[] args) {char arr[][]={{'A','B','C','E'},{'S','F','C','S'},{'A','D','E','E'}};}public int numIslands(char[][] grid) {int sum=0;for(int i=0;i<grid.length;i++){for(int j=0;j<grid[i].length;j++){if(grid[i][j]=='1'){sum++;dfs(grid,i,j);}}}return sum;}static int []zou1={0,0,0,1,-1};static int []zou2={0,-1,1,0,0};public static void dfs(char [][] arr,int x,int y){for(int i=1;i<=4;i++){int x1=zou1[i]+x;int y1=zou2[i]+y;if(x1<0||y1<0||x1>=arr.length||y1>=arr[0].length||arr[x1][y1]=='0'){continue;}arr[x1][y1]='0';dfs(arr,x1,y1);}}}

994. 腐烂的橘子

题意

在给定的 m x n 网格 grid 中,每个单元格可以有以下三个值之一:

  • 值 0 代表空单元格;
  • 值 1 代表新鲜橘子;
  • 值 2 代表腐烂的橘子。

每分钟,腐烂的橘子 周围 4 个方向上相邻 的新鲜橘子都会腐烂。

返回 直到单元格中没有新鲜橘子为止所必须经过的最小分钟数。如果不可能,返回 -1 。

题解

我们这题跟上一题实际上差不多,但是当前题需要求的是最小的分钟数,我们假设当前为3*3,表格为211 111 112 也就是表格边缘有两个的话,实际上对于当前而言,我们应当遍历当前的两个,将与他相连的都赋值为2,也就是被感染了,然后这就是1次,下一次就变成了221 212 122 ,这一次也是同理,遍历所有的2,将他相连的1感染即可

代码


import java.util.*;public class Solution {public static void main(String[] args) {char arr[][]={{'A','B','C','E'},{'S','F','C','S'},{'A','D','E','E'}};}static int []zou1={0,0,0,1,-1};static int []zou2={0,1,-1,0,0};public int orangesRotting(int[][] grid) {Queue<node>dp =new ArrayDeque<>();int sum=0;int ans=0;for(int i=0;i<grid.length;i++){for(int j=0;j<grid[i].length ;j++){if(grid[i][j]==1){sum++;}else if(grid[i][j]==2){dp.add(new node(i,j));}}}if(sum!=0&&dp.isEmpty()){return -1;}if(sum==0){return 0;}while(dp.size()>=1&&sum!=0){ans++;int f=dp.size();while(f>=1){f--;node now=dp.peek();dp.poll();for(int i=1;i<=4;i++){int x= now.x+zou1[i];int y=now.y+zou2[i];if(x<0||y<0||x>=grid.length||y>=grid[x].length||grid[x][y]!=1){continue;}grid[x][y]=2;dp.add(new node(x,y));sum--;}}}if(sum==0){return ans;}else{return -1;}}public  static class node{int x,y;node(int a,int b){x=a;y=b;}}}

207. 课程表

题意

你这个学期必须选修 numCourses 门课程,记为 0 到 numCourses - 1 。

在选修某些课程之前需要一些先修课程。 先修课程按数组 prerequisites 给出,其中 prerequisites[i] = [ai, bi] ,表示如果要学习课程 ai 则 必须 先学习课程  bi 。

  • 例如,先修课程对 [0, 1] 表示:想要学习课程 0 ,你需要先完成课程 1 。

请你判断是否可能完成所有课程的学习?如果可以,返回 true ;否则,返回 false 。

题解

简单来看,我们将课程视为一张图,也就是遍历图上面有没有环,这个就比较简单,每一次找一个节点进行dfs,看看会不会再一次遍历到当前节点即可

代码


import java.util.*;public class Solution {public static void main(String[] args) {int  arr[][]={{0,1}};}static List<List<Integer>> ways = new ArrayList<>(3000);static int[]mark =new int[3000];static boolean ans=true;public boolean canFinish(int numCourses, int[][] prerequisites) {ans=true;ways = new ArrayList<>(numCourses+10);mark = new int[numCourses+10];for (int i = 0; i < numCourses; i++) {mark[i]=0;ways.add(new ArrayList<>());}for(int i=0;i<prerequisites.length;i++){ways.get(prerequisites[i][0]).add(prerequisites[i][1]);}for(int i=0;i<numCourses;i++){if(!ans){return ans;}if(mark[i]==0){dfs(i);}}return ans;}static void dfs(int u){if (mark[u] == 1) {ans = false;return;}if (mark[u] == 2) { return;}mark[u] = 1; for (Integer now : ways.get(u)) {dfs(now);}mark[u] = 2; }}

208. 实现 Trie (前缀树)

题意

你这个学期必须选修 numCourses 门课程,记为 0 到 numCourses - 1 。

在选修某些课程之前需要一些先修课程。 先修课程按数组 prerequisites 给出,其中 prerequisites[i] = [ai, bi] ,表示如果要学习课程 ai 则 必须 先学习课程  bi 。

  • 例如,先修课程对 [0, 1] 表示:想要学习课程 0 ,你需要先完成课程 1 。

请你判断是否可能完成所有课程的学习?如果可以,返回 true ;否则,返回 false 。

题解

简单写一个字典树的题解我们令a=1,b=2等等,画图可得

这实际上就是一ke字典树的抽象模型,令a为根部节点,该图中就会存在abc,abde,abdd,也就是说,在我们进行插入操作的时候,插入的点与点之间的路径关系,但是如果有abd,那么怎么跟abde区分呢,实际上我们把结尾的坐标设置一个结束的按钮即可

代码

class Trie {boolean check;Trie[]child;public Trie() {check=false;child =new Trie[28];}public void insert(String word) {Trie node=this;char []arr=word.toCharArray();for(int i=0;i<arr.length;i++){char f=arr[i];int x=f-'a'+1;if(node.child[x]==null){node.child[x]=new Trie();}node=node.child[x];}node.check=true;}public boolean search(String word) {Trie node=find(word);if(node==null){return false;}if(node.check==false){return false;}return true;}public boolean startsWith(String prefix) {Trie node=find(prefix);if(node==null){return false;}return true;}public Trie find(String word){Trie node=this;char[]arr=word.toCharArray();for(int i=0;i<arr.length;i++){int f=arr[i]-'a'+1;if(node.child[f]==null){return null;}node=node.child[f];}return node;}
}


文章转载自:

http://Yp7VJqcv.hmdyL.cn
http://cgln9rPk.hmdyL.cn
http://Wxq5EGme.hmdyL.cn
http://gL1rKMmr.hmdyL.cn
http://gH61UZSW.hmdyL.cn
http://Q5oXusQJ.hmdyL.cn
http://XwFDjR3H.hmdyL.cn
http://7Nekm0Ty.hmdyL.cn
http://KtBEgVN9.hmdyL.cn
http://Iru1XXMh.hmdyL.cn
http://Nv25LvQl.hmdyL.cn
http://RrMMzZox.hmdyL.cn
http://UKBJUkwX.hmdyL.cn
http://Xif4V9dy.hmdyL.cn
http://HFtLDuTr.hmdyL.cn
http://TM2k5dHU.hmdyL.cn
http://qTusX8Wm.hmdyL.cn
http://G9Y7I1no.hmdyL.cn
http://mUANBPBU.hmdyL.cn
http://6rILpPRy.hmdyL.cn
http://SI23vCT0.hmdyL.cn
http://Sk3A6UKW.hmdyL.cn
http://VKyVtMI3.hmdyL.cn
http://5Zq4m4O7.hmdyL.cn
http://NxhVrzlF.hmdyL.cn
http://4Y9EV6rb.hmdyL.cn
http://5PXV16bF.hmdyL.cn
http://RMpGZRkR.hmdyL.cn
http://lnt3K3v8.hmdyL.cn
http://C75J3Sjn.hmdyL.cn
http://www.dtcms.com/wzjs/740502.html

相关文章:

  • 网站左侧分类导航菜单求生之路2怎么做非官方网站
  • 理财网站方案建设湖南公司网站建设
  • 购买域名搭建网站郑州网络运营培训
  • 价钱网站建设站长工具域名查询
  • 如何做本地网站中国建设银行网站主要功能
  • 腾讯云服务器用什么做网站在线网站制作系统源码
  • 江苏建设厅官方网站人工费wordpress 5.1.1主题
  • 专业手机网站设计网站建设图片大全
  • 做网站移动端建多大尺寸如何搭建局域网服务器
  • 如何自建网站删除wordpress logo
  • 出版社网站建设商城小程序开发多少钱
  • 网站的关于我们怎么做摄影网站cnu视觉联盟
  • 西安专业的网站优化浙江省住房和城乡建设厅成绩查询
  • 网站统计天津seo管理平台
  • 新手学做网站学哪些知识wordpress强大播放器
  • 孝仙洪高速公路建设指挥部网站网站管理助手 伪静态
  • 企业电子商务网站的建设方式深圳网站建设 百度一下
  • 汉字域名的网站普洱做网站的报价
  • 做网站的资源有哪些上海天华建筑设计有限公司合肥分公司
  • 门户网站综合型门户天津网站制作
  • 做网站运营有趣吗济南建设官方网站
  • 建设网站 费用吗做网站导航栏目怎么做
  • 江津哪个网站可以做顺风车flash 网站模板
  • 企业网站的首页设计北京seo优化哪家公司好
  • app 游戏网站建设短视频营销现状
  • 合肥简川科技网站建设公司 概况微信公众号会员卡管理系统
  • php网站建设设计制作方案中国住建部
  • 根据百度地图做网站wordpress 问卷插件
  • 江门有什么网站推广wordpress 社交
  • 重庆建设教育网站骨科医院网站优化服务商