AVL(二叉平衡树) 的实现
摘要:一颗AVL树是其每个节点的左子树与右子树的高度最多差1的二叉查找树。在插入过程中,利用旋转的办法保持这个性质。共分四种情形:1、 树T的左孩子的左子树上新插入节点导致破坏平衡性:如下图左边所示,因为在子树X中新加入一个节点,导致k2处的平衡性被破坏通过如右边所示的旋转,可以使得整棵树重新变得平衡。2...
阅读全文
二叉树的非递归遍历(先序, 中序, 后序)
摘要:先序遍历:/** * Definition for binary tree * struct TreeNode { * int val; * TreeNode *left; * TreeNode *right; * TreeNode(int x) : val(x), ...
阅读全文