#include <stdio.h>
#include <stdlib.h>
typedef struct TreeNode{
int val;
struct TreeNode *left;
struct TreeNode *right;
}TreeNode;
TreeNode *Node(int val) {
TreeNode *node = (TreeNode *)malloc(sizeof(TreeNode));
node->val = val;
node->left = NULL;
node->right = NULL;
return node;
}
void preorder(TreeNode *root) {
if (root == NULL) {
return;
}
else {
printf("%d ", root->val);
preorder(root->left);
preorder(root->right);
}
}
void inorder(TreeNode *root) {
if (root == NULL) return;
else {
inorder(root->left);
printf("%d ", root->val);
inorder(root->right);
}
}
void pastorder(TreeNode *root) {
if (root == NULL)
return;
else {
pastorder(root->left);
pastorder(root->right);
printf("%d ", root->val);
}
}
void main() {
TreeNode *root = Node(1);
root->left = Node(2);
root->right = Node(3);
root->left->left = Node(4);
root->left->right = Node(5);
root->right->left = Node(6);
root->right->right = Node(7);
preorder(root);
printf("\n");
inorder(root);
printf("\n");
pastorder(root);
}
二叉树深度优先搜索的C语言实现
最新推荐文章于 2024-10-01 08:56:16 发布