将general树转化为二叉树

在general树中,二叉树A的左子结点是树中的A的最左子结点,A的右子结点是树中A的右侧兄弟结点

转化算法代码:

1 template <class Elem>
2 BinNode<Elem>* convert(GTNode<Elem>* genroot) 
3 {
4      if (genroot == NULL) return NULL;
5      GTNode<Elem>* gtemp = genroot->leftmost_child();
6      btemp = new BinNode(genroot->val(), convert(gtemp),convert(genroot->right_sibling()));
7 }

 这种转化来的二叉树一般都是非常的不平衡。

posted on 2012-12-02 09:44  Besion王  阅读(132)  评论(0编辑  收藏  举报

导航