先序遍历二叉树c语言代码
时间: 2023-08-01 20:11:21 浏览: 108
c代码-二叉树的建立以及先序、中序、后序遍历C语言实现
5星 · 资源好评率100%
当然,我可以为您提供一段先序遍历二叉树的 C 语言代码。以下是一个示例:
```c
#include <stdio.h>
#include <stdlib.h>
struct Node {
int data;
struct Node* left;
struct Node* right;
};
struct Node* createNode(int data) {
struct Node* newNode = (struct Node*)malloc(sizeof(struct Node));
if (newNode == NULL) {
printf("内存分配失败!\n");
exit(1);
}
newNode->data = data;
newNode->left = NULL;
newNode->right = NULL;
return newNode;
}
void preorderTraversal(struct Node* root) {
if (root == NULL) {
return;
}
printf("%d ", root->data);
preorderTraversal(root->left);
preorderTraversal(root->right);
}
int main() {
struct Node* root = createNode(1);
root->left = createNode(2);
root->right = createNode(3);
root->left->left = createNode(4);
root->left->right = createNode(5);
printf("先序遍历结果为:");
preorderTraversal(root);
return 0;
}
```
这段代码定义了一个二叉树的结构体 `Node`,并实现了先序遍历函数 `preorderTraversal`。在 `main` 函数中创建了一个简单的二叉树,并调用 `preorderTraversal` 函数进行先序遍历输出。运行代码将输出先序遍历结果。
希望这能帮到您!如果您有任何其他问题,请随时提问。
阅读全文