本文最后更新于34 天前,其中的信息可能已经过时,如有错误请发送邮件到larwar@163.com
前序遍历: 根,左,右
中序遍历: 左,根,右
后序遍历: 左,右,根
示例代码:
typedef struct TreeNode{
int data;
struct TreeNode *left, *right;
}TreeNode;
TreeNode* createNode(int data) {
TreeNode* node = (TreeNode*)malloc(sizeof(TreeNode));
node->data = data;
node->left = NULL;
node->right = NULL;
return node;
}
void pre_order(TreeNode *root){
if (root == NULL){
return;
}
printf("%d ", root->data);
pre_order(root->left);
pre_order(root->right);
}
void in_order(TreeNode *root){
if (root == NULL){
return;
}
in_order(root->left);
printf("%d ", root->data);
in_order(root->right);
}
void post_order(TreeNode *root){
if (root == NULL){
return;
}
post_order(root->left);
post_order(root->right);
printf("%d ", root->data);
}