用二叉树存储结构输出先序遍历,C语言
时间: 2024-12-12 22:32:16 浏览: 6
在C语言中,使用二叉树存储结构并输出其先序遍历,通常我们会采用递归的方式。首先,我们定义一个二叉树节点结构:
```c
typedef struct TreeNode {
int val;
struct TreeNode* left;
struct TreeNode* right;
} TreeNode;
```
然后,我们可以编写一个函数`preorderTraversal`来进行先序遍历:
```c
void preorderTraversal(TreeNode* root) {
if (root == NULL) {
return;
}
printf("%d ", root->val); // 访问根节点
preorderTraversal(root->left); // 递归遍历左子树
preorderTraversal(root->right); // 递归遍历右子树
}
```
这个函数会按照“根节点 -> 左子树 -> 右子树”的顺序打印出每个节点的值。如果要在控制台看到完整的遍历结果,你可以创建一个二叉树实例,并调用此函数:
```c
int main() {
// 创建一个示例二叉树...
TreeNode* root = createTree(); // 这里假设有一个createTree函数用于构建树
printf("先序遍历结果:");
preorderTraversal(root);
free(root); // 确保释放内存
return 0;
}
```
阅读全文