数据结构之线性表

顺序表的存储结构:

typedef struct {
   Type *elem;  //数据域
   int length;  //线性表长度
   int listsize;  //分配的存储空间
}SList;

构造一个空的线性表:

void InitList_S(SList &L){
  L.elem=(Type *)malloc (List_INIT_SIZE)*sizeof(Type));
  if(!L.elem)
  {
     printf("\n Malloc Error");
     return;
  }
  L.length=0;
  L.listzsize=List_INIT_SIZE;
  printf("\n已成功构造一个空的线性表");
}

销毁线性表:
void DestoryList_S(SList &L){
  free(L.elem);
  L.elem=NULL;
  printf("\n已销毁");
}

将线性表置为空表
void ClearList_S(SList &L){
  free(L.elem);
  L.elem=NULL;
  //重新分配LIST_INIT_SIZE个数据元素的存储空间
  L.elem=(Type *)malloc (LIST_INIT_SIZE*sizeof(Type));
  if(!L.elem)
  {
      printf("\n Malloc Error");
      return ;
  }
  L.length=0;
  L.listsize=LIST_INIT_SIZE;
  printf("\n 已将线性表置为空表");
}

判断线性表是否为空表
void EmptyList_S(SLlist_S){
  if(L.length==0)
  printf("\n线性表L是空表");
  else printf("\n线性表不是空表");
}

显示线性表L中的元素值
void GetList_S(SList L){
  int j;
  for(int j=0;j<L.length;j++)
    printf("%d ",*(L.elem+j));
    return ;
}



评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值