静态顺序表示:
#define Maxsize 50 //最大长度
typedef struct{
ElemType data [Maxsize]; //顺序表元素
int length; //当前长度
}Sqlist; //别名,类型定义
动态顺序表示:
#define Initsize 100 //最大长度
typedef struct{
ElemType *data; //表首地址的指针
int Maxsize,length; //最大长度,当前长度
}Sqlist; //别名,类型定义
L.data=(ElemType*)malloc(sizeof(ElemType)*Initsize);
============================================
typedef struct node {
ElemType data;
struct node *next;
}node,*Linklist;
node定义了data和Linklist,所以在使用时如果
node *p;
则定义了一个p的指针 指向一个node节点
∴p就是该节点的地址
p.data就是该指针指向的节点的data
p.next就是该指针指向的节点的next
--------------------------------------------
头插法插入头结点
Linklist List_HeadInsert(Linklist &L){
//Linklist是因为做完头结点插入之后要返回的是一个Linklist(链)
node *s;
int x;
L=(Linklist)malloc(sizeof(node));
…
在L的链头插入头结点
…
}
--------------------------------------------
按序号查找节点值
node *GetElem(Linklist L,int i){
//Linklist是因为做完头结点插入之后要返回的是一个ndoe(节点)
}