[数据结构学习笔记8] 二叉树(Binary Trees)
二叉树是一种特殊的树,他满足:
1. 每个节点只能有0,1,2个孩子节点
2. 只能有一个根节点
3. 从根节点到任意节点,只能有一条路径
二叉树的变种:
1. 完满二叉树(Full Binary Tree):每个非叶子节点必须有两个孩子节点
2. 完全二叉树(Complete Binary Tree):孩子节点必须从左往右排列
3. 完美二叉树(Perfect Binary Tree):每层都有两个叶子节点
4. 平衡二叉树(Balanced Binary Tree):左右高度相差不大于1
5. 退化二叉树(Degenerate Binary Tree):每个父节点只有一个孩子节点,这类二叉树类似于链表,所以叫退化二叉树。
代码实现(javascript)
class Node { constructor(data) { this.data = data; this.left = null; this.right = null; } } const rootNodeA = new Node("A"); const nodeB = new Node("B"); const nodeC = new Node("C"); const nodeD = new Node("D"); const nodeE = new Node("E"); const nodeF = new Node("F"); const nodeG = new Node("G"); rootNodeA.left = nodeB; rootNodeA.right = nodeC; nodeB.left = nodeD; nodeB.right = nodeE; nodeE.left = nodeF; nodeE.right = nodeG;

浙公网安备 33010602011771号