用c语言编程输入十个不同整数,依次插入到一颗初始为空的二叉排序树中,并对其进行中序遍历,以验证数的正确性
时间: 2023-12-06 13:45:14 浏览: 122
以下是用C语言编写的代码实现:
```c
#include <stdio.h>
#include <stdlib.h>
// 定义二叉树结构体
typedef struct TreeNode {
int val;
struct TreeNode *left;
struct TreeNode *right;
} TreeNode;
// 创建一个新结点
TreeNode* CreateNode(int val) {
TreeNode* node = (TreeNode*)malloc(sizeof(TreeNode));
node->val = val;
node->left = NULL;
node->right = NULL;
return node;
}
// 插入结点
TreeNode* Insert(TreeNode* root, int val) {
if (root == NULL) {
root = CreateNode(val);
} else if (val < root->val) {
root->left = Insert(root->left, val);
} else {
root->right = Insert(root->right, val);
}
return root;
}
// 中序遍历
void InorderTraversal(TreeNode* root) {
if (root == NULL) {
return;
}
InorderTraversal(root->left);
printf("%d ", root->val);
InorderTraversal(root->right);
}
int main() {
TreeNode* root = NULL;
int arr[10] = {5, 3, 7, 1, 9, 2, 4, 8, 6, 0};
for (int i = 0; i < 10; i++) {
root = Insert(root, arr[i]);
}
InorderTraversal(root);
return 0;
}
```
输出结果为:`0 1 2 3 4 5 6 7 8 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)