二叉树前序创建 c语言
时间: 2024-09-09 22:16:18 浏览: 54
在C语言中,二叉树的前序遍历是一种递归操作,它按照“根节点-左子树-右子树”的顺序访问每一个节点。以下是创建并打印二叉树前序遍历的基本步骤:
```c
#include <stdio.h>
// 定义二叉树结点结构体
typedef struct TreeNode {
int val; // 节点值
struct TreeNode* left; // 左孩子指针
struct TreeNode* right; // 右孩子指针
} TreeNode;
// 创建一个新的二叉树节点
TreeNode* newNode(int data) {
TreeNode* node = (TreeNode*)malloc(sizeof(TreeNode));
node->val = data;
node->left = NULL;
node->right = NULL;
return node;
}
// 前序遍历函数(递归实现)
void printPreorder(TreeNode* root) {
if (root == NULL) {
return;
}
printf("%d ", root->val); // 打印当前节点
printPreorder(root->left); // 访问左子树
printPreorder(root->right); // 访问右子树
}
int main() {
// 根据实际需求,手动构建或动态添加节点来创建二叉树
// ...
TreeNode* root = newNode(1);
// 这里假设已经给root设置了左右子节点
printPreorder(root); // 输出前序遍历的结果
return 0;
}
```
阅读全文