静态顺序表和动态顺序表

实现一个静态顺序表,首先,要定义一个保存数据的数组,保存在结构体中,用size来存储数组中的元素个数,

typedef struct SeqList
{
DataType array[MAX_SIZE];
size_t size;
}SeqList;

首先来实现一下静态顺序表的初始化函数,可以借用系统的memset函数来实现,开辟一块空间全部初始化为0,没有存入数据所以size也为0

void InitSeqList(SeqList *pSeq)
{
assert(pSeq);
memset(pSeq->array, 0, sizeof(DataType)*MAX_SIZE);
pSeq->size = 0;
}

然后简单的实现一下尾插的函数,把顺序表和需要插入的数据传给函数

void PushBack(SeqList *pSeq, DataType x)
{
    assert(pSeq);//断言顺序表
    if (pSeq->size >= MAX_SIZE)//判断顺序表是否已满,满的话就
{
printf("The SeqList is Full.\n");
return;
}
pSeq->array[pSeq->size++] = x;
}


你可能感兴趣的:(舒服吧)