我知道BST (二叉树)的顺序遍历并不是唯一的。例如 in-order traversal = [a, b, c] where a < b < c
/ \ \b c
Two different BSTs output same in-order traversal array.我不确定这对于后序遍历还是前序遍历是正确的-我找不到反例。前序</e
我刚刚开始学习二叉树。在给定Inorder和Postorder或Inorder和Preorder的情况下,有没有一种算法来找出二叉树结构?我一直在尝试手动操作,但它从来没有出来correct.For例如-这两个是有效的顺序和后序遍历一个给定的树:
顺序:D B F E A G C L J H K后序:D F E B G L J K H C现在按顺序看,左边的子树变成:{D B F E},右边的子树变成{G C L J H K}。右子树的根将是前序中倒数第二的元素,即C。
我想创建一个二叉树,并通过前序遍历遍历它,我使用递归方法。这些代码可以编译,但不能正确运行,我发现它可能无法完成CreateBitree()函数,但我不知道问题出在哪里。CreateBiTree(BiNode *T) { //create a binary tree by preorder traversal scanf("%c"= NULL) {
printf("%c\n", T ->