数据结构——顺序表
1、什么是顺序表(seqlist):
将数据按照顺序储存的一种形式。
顺序表是以结构体的形式储存数据的一种方式。
2、顺序表如何定义及使用
首先定义基本数据
#define MAX 10
typedef int datatype_t;
typedef struct
{
datatype_t buf[];
int n;
}seqlist_t;
2.1 定义数据表;初始化顺序表,为数据表分配空间返回值为顺序数据表的地址
seqlist_t * creat_data_seqlist()
{
seqlist_t *p;
p=(seqlist*)malloc(sizeof(seqlist_t));
if(NULL==p)
{
printf("malloc s failed!");
return NULL;
}
memset(p,0,sizeof(seqlist_t));
return p;
}
2.2 定义数据表的输入;
void insert_data_seqlist(seqlist_t *p,datatype_t data)
{
p->buf[p->n]=data;
p->n+=1;
}
2.3 定义数据表的输出:
void print_data_seqlist(seqlist_t *p)
{
int i=0;
for(i=0;i<p->n;i++)
{
printf("%d",p->buf[i]);
}
}
2.4 判断数据表中数据是否为空:1为空 0为!空
int Is_empty_seqlist(seqlist_t *p)
{
return p->n==0?1:0;
}
2.5 判断数据表中数据是否以满:1为满 0为!满
int Is_full_seqlist(seqlist_t * q)
{
return p->n==MAX?1:0;
}