二叉链表的二叉树读写代码
时间: 2024-05-26 11:09:37 浏览: 78
二叉链表是一种二叉树的存储结构,它通过使用指针将每个节点的左右子节点连接起来。以下是二叉链表二叉树的读写代码示例:
读取二叉树:
```C++
typedef struct BiTNode {
int data;
struct BiTNode *lchild, *rchild;
} BiTNode, *BiTree;
void CreateBiTree(BiTree &T) {
int data;
cin >> data;
if (data == -1) { // -1 表示该节点为空
T = NULL;
} else {
T = new BiTNode;
T->data = data;
CreateBiTree(T->lchild);
CreateBiTree(T->rchild);
}
}
```
上述代码通过递归地读取用户输入的数据来构建二叉树,当读取到-1时表示该节点为空,递归结束。
写入二叉树:
```C++
void PrintBiTree(BiTree T) {
if (T) {
cout << T->data << " ";
PrintBiTree(T->lchild);
PrintBiTree(T->rchild);
} else {
cout << "-1 ";
}
}
```
上述代码通过递归地输出二叉树的每个节点的值,并在遇到空节点时输出-1。
阅读全文