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

互联网如何做旅游网站网站会员系统怎么做模版

互联网如何做旅游网站,网站会员系统怎么做模版,安卓app下载,广州市花都区建设局网站引言 DFS 深度优先算法:从一个节点开始,一直搜索,直到一个叶子节点或者无法搜索下去。 BFS 广度优先算法(层序遍历):从一个节点开始,逐层搜索节点。 实现 DFS(深度优先&#xff…

引言

DFS

深度优先算法:从一个节点开始,一直搜索,直到一个叶子节点或者无法搜索下去。

BFS

广度优先算法(层序遍历):从一个节点开始,逐层搜索节点。

实现

DFS(深度优先)

class Solution:def connect(self, root: 'Node') -> 'Node':pre = []def dfs(node: 'Node', depth: int) -> None:if node is None:returnif depth == len(pre): pre.append(node)else:  pre[depth].next = node  pre[depth] = nodedfs(node.left, depth + 1)dfs(node.right, depth + 1)dfs(root, 0)  return root

这个主要是通过一直遍历左边子树的左节点,核心思想是pre[depth].next = node pre[depth] = node,这个就直接使用将左子树的左节点作为下一个值,直到后面没有值了,这里面的一个判断if depth == len(pre)就做一个是否当前深度等于列表长度。然后就是递归左右子树,进入下一层。

BFS(广度优先/层序遍历)

class Solution:def connect(self, root: 'Node') -> 'Node':if root is None:return Noneq = [root]while q:for x, y in pairwise(q):x.next = ytmp = qq = []for node in tmp:if node.left:  q.append(node.left)if node.right: q.append(node.right)return root

广度优先搜索和深度优先搜索的主要区别就是广度优先遍历是没有一直往左子树的左节点的,而是直接用pairwise将两个值进行分组,并将下一节点放在分组的另一个值上,for x,y in pairwose(q):

x.next = y,然后将所有的值添加到队列中。对了,队列是一种很适合用于层序遍历的,因为队列是先进先出,而且队列由列表表示。

http://www.dtcms.com/wzjs/796324.html

相关文章:

  • lamp网站开发黄金组合 pdf网站推广建设
  • 建立网站需要多长钱百度旗下13个app
  • 九江做网站开发需要多少钱制作一个软件
  • 课题组网站怎么做北京市网页设计
  • 网站都有什么语言模型下载网站开发流程图
  • 外网网站网站建设开发软件教程
  • 工商局网站做年报seo云优化软件
  • 发帖效果好的网站怎么样新建一个网站
  • 深圳网站制作的公司排名北京住房和城乡建设局门户网站
  • 宁波网站推广人wordpress oauth qq
  • 口碑营销网站wordpress 主题next
  • 南京网站制作设计公司打开浏览器直接进入网站
  • 建设软件资源网站中国最好的外贸公司
  • 扬中市做网站北京制作网站的公司
  • 衡水做企业网站的价格山东济南建设网
  • php网站调试环境搭建沧州网站改版优化
  • 安徽机械加工网淮安网站优化
  • 廊坊网站关键词优化新手做电商哪个平台好
  • 邢台哪儿做网站便宜合肥高端网站建设
  • 好的网站建设公司有哪些网站ui设计
  • 织梦网站文章发布模板下载全球跨境电商平台
  • 可以做外链的图片网站东莞建筑公司招聘信息
  • 网站建设资料准备标准简单的编程代码
  • 芍药居做网站公司推广计划描述
  • 前端作业做一个网站建立网站原理
  • 网站建设顺利交付长兴做网站
  • 网站分析报告怎么写网站生成海报功能怎么做
  • 购物网站开发内容17我们一起做网站
  • 响应式一页网站广州做网站地方
  • 佛山网站页面优化信息流优化师培训