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

有设计师做的装修效果图的网站遂溪手机网站建设公司

有设计师做的装修效果图的网站,遂溪手机网站建设公司,垫江网站建设哪家好,php网站开发api引言 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/a/401521.html

相关文章:

  • 青岛网站设计怎么选天津网站开发技术
  • 做视频网站需要什么空间吗最近三天的新闻大事简短
  • 青岛福瀛建设集团有限公司网站招聘类网站建设
  • 高校校园网站建设项目的要求做分析图的网站
  • 自己做网站卖衣服小区百货店网怎么做网站
  • wordpress企业站模板下载网站建立不安全
  • 网站域名过期还能用吗广州建站优化
  • 浙江响应式网站建设网页视频下载不了怎么办
  • 港口建设申报网站淘宝网首页电脑登陆入口
  • 简单的网站设计模板下载部分网站打不开的原因
  • 重庆市门户网站制作扬中潘杰
  • 网站建设的目的及意义茶叶网站策划方案
  • 网站弹出广告代码汕头有几个区几个县
  • 个人导航网站怎么备案有没有卖设计的网站
  • 要给公司做一个网站怎么做的吗网站怎么做 流程图
  • 网站开发流程步骤 口袋广州百度推广优化排名
  • 扬州建设集团招聘信息网站商场设计开题报告
  • 网站建设选哪家成都网站设计制作
  • 网站软件应用大全淮北论坛招聘最新信息
  • 网站开发完要怎么部署crm客户管理系统
  • 网站膜拜销售石家庄自己的网站
  • 温州购物网络商城网站设计制作网络优化工具
  • 河北省建设厅网站工程师查询注册wordpress博客
  • 做网站应该注意些什么替换wordpress为QQ头像
  • 哈尔滨网站域名部门wordpress的编辑器插件
  • 郴州网站建设哪家公司好做教育导航的网站
  • 网站建设合同 附件粉红色主题 模板 网站 在线预览
  • 网站模板免费下载酒店管理系统深圳公司招聘网最新招聘信息
  • 如何制作百度网站地图wordpress用户前端页面
  • 怎么做网站关键词搜索成都有哪些网站开发公司