我有这样一棵二进制表示的树;
1
/
2
\
3
/ \
6 4
\ \
7 5
/
8
/
9
\
10
\
11
但实际上这不是二叉树,而是像
1
/ | | \
2 3 4 5
/\ |
6 7 8
/| \
9 10 11
你能帮我打印出类似的东西吗(孩子以相反的顺序打印出来)
1 : 5 4 3 2
5 : 8
3 : 7 6
8 : 11 10 9
我的 TNode 类看起来像。
class TNode {
public:
unsigned long int data;
TNode * left;///first child
TNode * right;/// sibling
TNode * parent;/// parent
TNode(unsigned long int d = 0, TNode * p = NULL, TNode * n = NULL)///konstruktors
{
left = NULL;
right = NULL;
parent = p;
data = d;
}
};
这需要堆栈实现吗?