【深度优先搜索1】树的存储和遍历
深度优先搜索(Depth First Search , DFS)是一种用于遍历或搜索图(图可以是树、无向图、有向图等)的算法。它按照深度优先的策略,优先访问当前节点的下一层邻接节点,直到无法继续为止,再回溯到上一层。
你可以先粗略的理解为:DFS就是在图上做特定的递归,DFS⊂递归
前言:通过【图论的存储】图的存储,我们已经学会怎么把图存进邻接表且怎么遍历。由于树是有向无环图,所以树的存储和遍历和图基本是一致的。而本节课主要是让大家熟悉在笔试中1.树的两种读入方式以及2.树的先序遍历。
第一种读入形式:边形式
P14139.【深度优先搜索1】树的存储和遍历
题目描述:
给定一棵 n 个节点的树,节点编号为1−n,树的根节点固定为 1。我们有两种方式表示树的结构:
- 方式一:通过 n-1 条边的形式,每条边
u v 表示节点 u 和节点 v 之间存在一条边。
- 方式二:通过一个 father 数组,
father[i] 表示节点 i+1 的父节点。
开通会员即可查看完整视频题解: 1.题目讲解 2.思路分析 3.逐行代码手写