用c语言
时间: 2024-02-27 10:57:24 浏览: 21
好的,以下是用 C 语言实现二叉树的创建代码示例:
```
#include <stdio.h>
#include <stdlib.h>
struct TreeNode {
int val;
struct TreeNode* left;
struct TreeNode* right;
};
struct TreeNode* createTree(int* nums, int index, int size) {
if (index >= size || nums[index] == -1) {
return NULL;
}
struct TreeNode* root = (struct TreeNode*)malloc(sizeof(struct TreeNode));
root->val = nums[index];
root->left = createTree(nums, 2 * index + 1, size);
root->right = createTree(nums, 2 * index + 2, size);
return root;
}
int main() {
int nums[] = { 1, 2, 3, -1, 4, 5, 6 };
int size = sizeof(nums) / sizeof(nums[0]);
struct TreeNode* root = createTree(nums, 0, size);
return 0;
}
```
其中,int* nums 表示按照二叉树的顺序遍历得到的节点值,index 表示当前节点在数组中的下标,size 表示数组的长度。在实际应用中,也可以根据实际情况进行修改。