数据结构c语言代码对前面设计的基础整数数据2,1,0,9,21,10,91,211顺序输入生成二叉排序树
时间: 2023-09-14 19:03:33 浏览: 43
以下是基于C语言实现的代码:
```c
#include <stdio.h>
#include <stdlib.h>
// 定义二叉树结构体
typedef struct node {
int data;
struct node *left;
struct node *right;
} Node;
// 插入节点
void insert(Node **root, int data) {
if (*root == NULL) {
Node *newNode = (Node *) malloc(sizeof(Node));
newNode->data = data;
newNode->left = NULL;
newNode->right = NULL;
*root = newNode;
} else if (data < (*root)->data) {
insert(&(*root)->left, data);
} else {
insert(&(*root)->right, data);
}
}
int main() {
int nums[] = {2, 1, 0, 9, 21, 10, 91, 211};
int len = sizeof(nums) / sizeof(nums[0]);
Node *root = NULL;
for (int i = 0; i < len; i++) {
insert(&root, nums[i]);
}
return 0;
}
```
运行该程序,即可生成二叉排序树。可以通过观察树的结构来验证二叉排序树是否正确生成。可以通过调用其他遍历方法来观察树的结构,例如前序遍历、后序遍历等。
相关推荐
![doc](https://img-home.csdnimg.cn/images/20210720083327.png)
![zip](https://img-home.csdnimg.cn/images/20210720083736.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)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)