判断一颗树是否是红黑树-_-b
首先,红黑树是一棵平衡二叉树,平衡二叉树又是一棵二叉搜索树。
简单的说就是左子树中,子节点比父节点小,右子树中,子节点比父节点大。
根节点一定是黑节点。
先按先序遍历用编号建树,然后判断,子节点与父节点的大小关系、用编号DFS左右子树的黑节点个数是否一样。
There is a kind of balanced binary search tree named red-black tree in the data structure. It has the following 5 properties:
(1) Every node is either red or black.
(2) The root is black.
(3) Every leaf (NULL) is black.
(4) If a node is red, then both its children are black.
(5) For each node, all simple paths from the node to descendant leaves contain the same number of black nodes.
For example, the tree in Figure 1 is a red-black tree, while the ones in Figure 2 and 3 are not.