数据结构

数据结构重学日记(十九)二叉树中序遍历

2019-01-22  本文已影响0人  南瓜方糖

中序遍历的操作过程为:

代码


void foreach_in_tree(BiTree T){
    if(T != NULL){
        foreach_in_tree(T->lchild);
        printf("%c",T->data);
        foreach_in_tree(T->rchild);
    }
}

还输入之前的二叉树:
ABD#G###CE##F##

和上一篇公用一个创建方法,然后运行后这里又遇到了问题:
我打印出的顺序和视频中的顺序不一致,视频中的顺序为:D G B A E C F,而我的顺序为:B D G A C E F,是谁在搞鬼呢?

仔细观察后,发现原来是我傻逼了。

foreach_in_tree 在函数内调用自身时写成了 foreach_tree,跟视频的结果一致才是出了鬼哦。

改正后,顺序果然一致了。

运行结果

毛毛糙糙的习惯真的害人不浅啊,大家不要像我一样粗心大意…

那么,这一篇就先到这里吧,中序的遍历其实也挺简单的,接下来再学习下后续遍历。

上一篇 下一篇

猜你喜欢

热点阅读