1.顺序表
sqlist
typedef struct /* 线性表的动态分配顺序存储结构 */
{
ElemType *elem; /* 存储空间基址 */
int length; /* 当前长度 */
int listsize; /* 当前分配的存储容量(以sizeof(ElemType)为单位) */
}SqList;
2.链表
(这部分解释的比较详细)
struct LNode //struct后面跟结构标记,区别于没有跟任何东西的struct
{
ElemType data; //elemtype形式(默认为int) 的数据域
struct LNode *next; //定义一个指向结构体的指针变量(因为提过*号后是指针),保存下一个结点的地址
};注意上面并没有重命名!!!要定义结构体变量还是需要用 "struct LNode 结构变量名",如果想去掉struct需要用 "typedef struct LNode LNode",这样可以直接使用 "LNode 结构变量名"定义。
typedef struct LNode *LinkList; //这里将struct LNode *重命名为Linklist,定义结构体指针变量只需使用 "LinkList 指针变量名".
3.顺序栈
SqStack
typedef struct SqStack
{