数据结构-树

(该篇基本等价于up主视频的学习笔记记录)

基本概念

  • 根节点:顶层节点,只会作为父节点、不会作为其他节点的子节点
  • 父节点、子节点:节点存在分支,那这个节点与其分裂出的节点为父子关系
  • 非叶子节点(存在至少一个子节点的节点)、叶子节点(没有子节点的节点)
  • 二叉树:每个节点最多分裂出左右子节点的数
  • 搜索二叉树:每个节点上的值大于其左子树上所有节点的节点值,小于其右子树上所有节点的节点值
  • 完全二叉树:从上到下,从左到右节点无缺失的二叉树
  • 平衡树二叉树:平衡树是二叉搜索树和堆合并构成的数据结构,它是一 棵空树或它的左右两个子树的高度差的绝对值不超过1,并且左右两个子树都是一棵平衡二叉树。
  • 二叉树遍历(遍历的顺序以根节点的位置命名,左到右不变)
    • 前序遍历:根节点→左子节点→右子节点
    • 中序遍历:左子节点→根节点→右子节点
    • 后序遍历:左子节点→右子节点→根节点
  • 深度优先遍历(Depth First Search, DFS)
  • 广度优先遍历(Breath First Search, BFS)

基本操作python实现

#创建
Class TreeNode():
	def __init__(self,val):
		self.val=val
		self.left=None
		self.right=None
#遍历见题目

题目

熟悉数据结构

144. 二叉树的前序遍历
94. 二叉树的中序遍历
145. 二叉树的后序遍历

熟悉数据结构+算法

这里例举一般遇到这种数据结构的题都有哪些解法,建议先看算法解题套路相关文章

(待补充)

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值