通用树采用的是双亲孩子表示法:
(1)每个结点都有一个指向其双亲的指针;
(2)每个结点都若干个指向其孩子的指针。
如何将这棵树转化为二叉树呢?可采用孩子兄弟表示法:
(1)每个结点都有一个指向其第一个孩子的指针;
(2)每个结点都有一个指向其第一个右兄弟的指针;
步骤:
(1)将树的根节点直接作为二叉树的根节点。
(2)将树的根节点的第一个子节点作为二叉树根节点的左指针,若该子节点存在兄弟节点,则将该子节点的第一个兄弟节点(方向从左往右)作为该子节点的右指针。
(3)树中的剩余节点按照上一步的方式(左孩子,右兄弟),依序添加到二叉树中。直到树中所有的节点都在二叉树中。