如果用c语言搭建一个二叉树,请写出源代码,并详细描述其功能
时间: 2023-04-01 17:03:55 浏览: 54
以下是用 C 语言搭建二叉树的源代码:
```
#include <stdio.h>
#include <stdlib.h>
struct node {
int data;
struct node *left;
struct node *right;
};
struct node *create_node(int data) {
struct node *new_node = (struct node *)malloc(sizeof(struct node));
new_node->data = data;
new_node->left = NULL;
new_node->right = NULL;
return new_node;
}
struct node *insert_node(struct node *root, int data) {
if (root == NULL) {
return create_node(data);
}
if (data < root->data) {
root->left = insert_node(root->left, data);
} else {
root->right = insert_node(root->right, data);
}
return root;
}
void inorder_traversal(struct node *root) {
if (root != NULL) {
inorder_traversal(root->left);
printf("%d ", root->data);
inorder_traversal(root->right);
}
}
int main() {
struct node *root = NULL;
root = insert_node(root, 5);
insert_node(root, 3);
insert_node(root, 7);
insert_node(root, 1);
insert_node(root, 9);
printf("Inorder traversal of the binary tree: ");
inorder_traversal(root);
return ;
}
```
这个程序实现了二叉树的创建和中序遍历。二叉树是一种树形数据结构,每个节点最多有两个子节点,左子节点的值小于父节点的值,右子节点的值大于父节点的值。中序遍历是指先遍历左子树,再遍历根节点,最后遍历右子树。这个程序的输出结果是:Inorder traversal of the binary tree: 1 3 5 7 9。
相关推荐
![](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)