中序遍历方法:遍历其左子树,访问根结点,遍历其右子树。
二叉树结构定义:
1 2 3 4 5 6 |
typedef struct TreeNode* BinTree; struct TreeNode{ ElementType Data; BinTree Left; BinTree Right; }; |
中序遍历方法:
1 2 3 4 5 6 7 8 9 |
void InOrderTraversal(BinTree BT) { if (BT) { InOrderTraversal(BT->Left); //递归左子树 printf("%d", BT->Data); InOrderTraversal(BT->Right); //递归右子树 } } |
以上图来说明一下中序遍历过程,左子树,根,右子树。
G—>D—>H—>E—>B—>A—>C —>I—>F—>J