线性表的两种存储方式
#include <stdio.h>
#define Maxsize 10
typedef struct{
int data[Maxsize];
int length;
}sqlist;
void InitList (sqlist &L){
for(int i=0;i<Maxsize;i++)
L.data[i]=0;
L.length =0;
}
int main(){
sqlist L;
InitList(L);
return 0;
}
#include <stdlib.h>
#define InitSize 10
typedef struct{
int *data;
int length;
int Maxsize;
}seqlist;
void InitList (seqlist &L){
L.data = (int *)malloc(sizeof(int)*InitSize);
L.length =0;
L.Maxisze =InitSize;
}
void IncreaseSize(Seqlist &L,int len){
int *p =L.data;
L.data =(int *)malloc(sizeof(int)*(L.Maxsize+len));
for(int i=0;i<L.length;i++)
L.data[i]=p[i];
L.Maxisze=L.Maxsize+len;
free(p);释放原来的内存空间
}
int main(){
seqlist L;
InitList(L);
IncreaseSize(L,10);
return 0;
}