//二叉树的顺序存储
//这里利用循环队列存储数据
//杨鑫
#include <stdio.h>
#include <math.h>
#include <stdlib.h>
#include <string.h>
#define MAXQSIZE 5 // 最大队列长度(对于循环队列,最大队列长度要减1)
#define MAX_TREE_SIZE 100 // 二叉树的最大结点数
#define ClearBiTree InitBiTree // 在顺序存储结构中,两函数完全一样
typedef char TElemType;
typedef TElemType SqBiTree[MAX_TREE_SIZE]; // 0号单元存储根结点
typedef int QElemType;
TElemType Nil = ' '; // 设空为字符型的空格符
typedef struct
{
int level; //结点的层
int order; //本层序号(按满二叉树计算)
}position;
typedef struct
{
QElemType *base; // 初始化的动态分配存储空间 相当于一个数组
int front; // 头指针,若队列不空,指向队列头元素,相当于一个数组下标
int rear; // 尾指针,若队列不空,指向队列尾元素的下一个位置
// 相当于一个数组下标
}SqQueue;
// 构造空二叉树T。因为T是固定数组,不会改变,故不需要&
int InitBiTree(SqBiTr
数据结构之---C语言实现二叉树的顺序存储
最新推荐文章于 2024-08-09 21:41:46 发布
本文详细介绍了如何使用C语言实现二叉树的顺序存储结构。通过这种方式,可以有效地存储和操作二叉树节点,便于进行遍历、查找和插入等操作。内容包括二叉树的基本概念、顺序存储结构的设计以及相关操作的代码实现。
摘要由CSDN通过智能技术生成