日常 17
二叉树是一种基础的数据结构,广泛应用于计算机科学和程序设计中。以下是一些关键的知识点:
- 
定义及性质- 定义:二叉树是每个节点最多有两个子节点的树结构,通常称为左子节点和右子节点。 
 性质:
 第n层的节点数最多为
 2的n-1次方
 深度为h的二叉树最多有
 2的h次方-1个节点。
 有n个节点的完全二叉树的高度为 log n以2为底-1
- 
类型 
 满二叉树:每个节点都有0或2个子节点,所有叶子节点在同一层。
 完全二叉树:除了最底层,其余层都是满的,最底层节点从左到右排满。
 平衡二叉树:任何节点的两个子树的高度差不超过1。
 二叉搜索树:对于每个节点,左子树所有节点值小于该节点值,右子树所有节点值大于该节点值。
- 
遍历方式- 前序遍历(根 -> 左 ->右) 
 中序遍历(左 -> 根 ->右)
 后序遍历(左 ->右 -> 根)
 层序遍历(按层访问,从上到下,从左到右)
- 
操作- 插入:根据特定的规则将新节点插入到树中。 
 删除:删除节点时需要注意重新调整树的结构,维持二叉树的性质。
 查找:通过比较利用二叉搜索树的特性快速查找节点。
- 
应用- 二叉树在很多场景中都非常有用,如: 
 数据库索引(B树、红黑树)
 表达式解析(表达式树)
 Huffman编码(用于数据压缩)
 6.相关算法- 可以使用递归和非递归的方式实现遍历和操作。
 常用的算法包括:
 -递归遍历算法 -迭代遍历算法(使用栈或队列实现)
 
                     
                    
                 
                    
                
 
                
            
         
         浙公网安备 33010602011771号
浙公网安备 33010602011771号