输出 二叉树的先序遍历。 样例输入 Copy 7 1 2 3 0 5 6 7 样例输出 Copy 1 2 5 3 6 7用c语言怎么写
时间: 2024-01-02 08:03:28 浏览: 34
以下是使用 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));
newNode->data = data;
newNode->left = NULL;
newNode->right = NULL;
return newNode;
}
/* 先序遍历二叉树 */
void preorderTraversal(struct Node* node) {
if (node != NULL) {
printf("%d ", node->data);
preorderTraversal(node->left);
preorderTraversal(node->right);
}
}
int main() {
/* 创建二叉树 */
struct Node* root = createNode(1);
root->left = createNode(2);
root->right = createNode(3);
root->left->left = createNode(0);
root->left->right = createNode(5);
root->right->left = createNode(6);
root->right->right = createNode(7);
/* 先序遍历二叉树 */
printf("先序遍历结果: ");
preorderTraversal(root);
return 0;
}
```
输出结果为:
```
先序遍历结果: 1 2 0 5 3 6 7
```
相关推荐
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)