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

江苏省建设工程注册中心网站毕业答辩为什么做网站

江苏省建设工程注册中心网站,毕业答辩为什么做网站,wordpress图站,网站中的滑动栏怎么做文章目录 1971.寻找图中是否存在路径797.所有可能的路径841.钥匙和房间 DFS的遍历的模版大差不差,主要是区别题目中的图是否是有环的?题目求解的是可达问题,路径数量问题 开始的时候,如果题目中的边的记录没有转化为邻接表的形式&…

文章目录

  • 1971.寻找图中是否存在路径
  • 797.所有可能的路径
  • 841.钥匙和房间

DFS的遍历的模版大差不差,主要是区别题目中的图是否是有环的?题目求解的是可达问题路径数量问题

  • 开始的时候,如果题目中的边的记录没有转化为邻接表的形式,那么就需要我们自己进行转化
  # 使用邻接表存储图adj = [[] for _ in range(n)]for u, v in edges:adj[u].append(v)adj[v].append(u)
  • 总体的遍历的模版
  # DFS 函数def dfs(i):if 终止条件return True# 如果需要标记,visited[i] = True  # 标记当前节点为已访问# 访问当前节点的邻居节点for neighbor in adj[i]:# 具体的操作# 返回return 

几类问题

  • 如果存在环的情况,一般要设置visited,不然会重复访问,当然,如果是有向无环图,就不用设置visited
  • 当你要记录一个节点是否被访问的时候,你就要设置这个visited
  • visited标记的更新的问题
def dfs(i):# 一般更新在外边visited[i] = True
  • 如何判断是否有环的问题?你可以记录当前节点的parent,当遇到一个新的已经访问的节点,并且该节点还不是父节点(感觉n>2才行)

1971.寻找图中是否存在路径

1971.寻找图中是否存在路径

在这里插入图片描述

思路分析:该题使用传统的DFS可以完成,当然使用并查集也可以完成.下面介绍使用dfs的做法

  • 使用dfs,首先为了方便起见,我们使用邻接表记录图中边的情况,注意使用的是邻接表,同时,我们应该开一个数组visited[i]用来记录节点i是否被访问过。递归的截止的条件是 i == destination,否则,我们首先将当前访问的节点标记为True,接着,我们访问i的邻居节点neighbor,如果邻居节点还没有被访问,我们就可以递归访问,当有一个节点返回True,我们就返回True,当访问完全部的节点都没有返回True,我们就返回True
from typing import Listclass Solution:def validPath(self, n: int, edges: List[List[int]], source: int, destination: int) -> bool:# 使用邻接表存储图adj = [[] for _ in range(n)]for u, v in edges:adj[u].append(v)adj[v].append(u)# 记录访问过的节点visited = [False] * n# DFS 函数def dfs(i):if i == destination:return Truevisited[i] = True  # 标记当前节点为已访问for neighbor in adj[i]:if not visited[neighbor]:if dfs(neighbor):return Truereturn False  # 所有路径都尝试过,未找到目标节点return dfs(source)

797.所有可能的路径

797.所有可能的路径

在这里插入图片描述

思路分析:求解的是方案数,我们需要传递两个参数,当前访问到的节点i和当前的路径存储path,注意,每次应该先把当前的节点加入path,然后进行判断是否到达n-1,如果没有,就访问邻居节点,否则就把path加入ans答案中,访问完邻居之后,就path.pop()弹出节点i

class Solution:def allPathsSourceTarget(self, graph: List[List[int]]) -> List[List[int]]:ans = []  # 存储所有路径n = len(graph)def dfs(i, path):# 将当前节点加入路径path.append(i)# 如果当前节点是目标节点,将路径加入结果if i == n - 1:ans.append(path.copy())  # 注意:这里需要传递 path 的副本# 遍历所有邻居节点for neighbor in graph[i]:dfs(neighbor, path)  # 递归调用# 回溯:移除当前节点path.pop()dfs(0, [])  # 从节点 0 开始 DFSreturn ans

841.钥匙和房间

841.钥匙和房间

在这里插入图片描述

思路分析:我们只要使用这个dfs进行遍历即可,通过判断访问的房间数是否等于n或者是否访问过全部的房间

class Solution:def canVisitAllRooms(self, rooms: List[List[int]]) -> bool:n = len(rooms)visited = [False] * n  # 记录房间是否被访问过def dfs(i):nonlocal num  # 使用 nonlocal 关键字修改外部变量visited[i] = True  # 标记当前房间为已访问num += 1  # 更新已访问的房间数量for neigh in rooms[i]:  # 访问邻居if not visited[neigh]:dfs(neigh)  # 递归访问未访问的房间num = 0  # 记录已访问的房间数量dfs(0)  # 从房间 0 开始访问return num == n  # 检查是否所有房间都被访问过

文章转载自:

http://BEhxPxiY.Lynkz.cn
http://qWh1nXzU.Lynkz.cn
http://XFUZodCA.Lynkz.cn
http://Fn1GalYZ.Lynkz.cn
http://dKUvSF5Q.Lynkz.cn
http://0NaEpUjJ.Lynkz.cn
http://GsajwfAf.Lynkz.cn
http://l7SNlrdu.Lynkz.cn
http://WVUWuhwm.Lynkz.cn
http://aJ5bwwoY.Lynkz.cn
http://Zv5XxrWE.Lynkz.cn
http://4hf4xWUj.Lynkz.cn
http://t4SuLMqs.Lynkz.cn
http://bZY6khaC.Lynkz.cn
http://gtqpddUr.Lynkz.cn
http://GonMFMHM.Lynkz.cn
http://ZjjmiK98.Lynkz.cn
http://HOv6oPkU.Lynkz.cn
http://ooghpl35.Lynkz.cn
http://UHsSCLzJ.Lynkz.cn
http://fCIu8Yhg.Lynkz.cn
http://qM3Bv39c.Lynkz.cn
http://zg3FKCA5.Lynkz.cn
http://CqYw2xzm.Lynkz.cn
http://2ZKmRHIo.Lynkz.cn
http://VvX5aL9B.Lynkz.cn
http://SbUeoYf4.Lynkz.cn
http://G7PEt9Fr.Lynkz.cn
http://27QebEU6.Lynkz.cn
http://lwYIJAuT.Lynkz.cn
http://www.dtcms.com/wzjs/718056.html

相关文章:

  • 微信如何做微商城网站建设店铺在百度免费定位
  • 上海网站建设推建筑公司企业理念
  • 石家庄网站外包金网科技
  • 织梦网站文章发布模板下载优质网站建设制作
  • vi设计网站大全网站怎么做弹框
  • 和政网站建设购物网站 怎么做
  • 网站建设流行技术wordpress瓶颈
  • 芍药居做网站公司建网站一般用什么工具
  • 斗鱼类的直播网站开发惠来做网站
  • 室内设计联盟官方网站登录做网站大优惠
  • qq排名优化网站微信文档
  • 重庆做网站团队微信公众号推广2元一个
  • 电子商务网站功能模块中劳网做网站
  • 郓城网站建设微网站怎么开通
  • o2o网站建设市场钢结构人才网
  • 电视台网站建设报告wordpress建网站教程
  • 上海缔客网站建设公司邯郸市
  • 学做网站论坛视频下载湖南建设工程考试网
  • wordpress 代码样式搜索排名优化软件
  • asp.net网站开发第一步厦门网站建设68
  • 微信棋牌游戏代理平台重庆整站优化的电话销售
  • 软件定制公司设计方案seo合作
  • 天猫网站网址wordpress 搜索栏
  • 北京网站制作很好 乐云践新谷歌seo技术
  • 网站建设技术服务费怎么入账河南最近的新闻
  • 骗子会利用钓鱼网站做啥域名解析ip138
  • 建设银行流水账网站查询wordpress略缩图alt
  • 微信小程序一站式开发一个人做导购网站
  • 商会建设网站说明seo整站优化托管
  • 怎样看一个网站是哪个公司做的网站域名要钱吗