【数据结构】线性表的类型定义及顺序表的基本操作(C语言)

本文介绍了使用C语言实现线性表的抽象数据类型,并详细讲解了包括构造、销毁、清空、获取长度、判断为空、取元素、查找元素、插入元素和删除元素等基本操作的定义与实现。

   笔者也开始学习数据结构啦,开始记录一些关于数据结构的笔记,本次记录一下线性表的类型定义以及用C语言实现一些顺序表基本操作的实现。

1.抽象数据类型

ADT List {
    数据对象:D = { ai | ai属于元素集,(i = 1,2,...,n,n>=0)}
    数据关系:R = { <ai-1,ai> | ai-1,ai属于D,(i = 2,3,...,n)}
    基本操作:
        InitList(&L);
        DestroyList(&L);
        ListInsert(&L,i,e);
        .....
    }ADT List

2.基本操作的定义与实现

1        InitList(Sqlist *L);

作用:构造一个空的线性表L

       InitList(*L)函数实现:

typedef int ElemType;
typedef struct{
    ElemType *elem;
    int len;
}Sqlist;

ElemType LnitList(Sqlist *L)            //构建一个空的顺序表L;
{
    L->elem = malloc(sizeof(Sqlist));   //为顺序表分配空间;
    if ( !L->elem ) 
        exit(0);                        //判断是否空间分配成功;
    L->len = 0;                         //初始空表长度为0;
    return 0;
}
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值