考点分析
一:线性表的定义(数据结构三要素–逻辑结构)
定义:线性表是具有相同
数据类型的n(n>0)个数据元素的有限
序列,其中n为表长
,当n=0时线性表是一个空表
。
- 相同:每个数据元素所占空间一样大;帮助计算机快速找到某一个具体的元素
- 序列:有次序
- 有限:数量是有限的
Eg:所有的整数按递增次序排列,是线性表吗?不是,因为整数是无限的
若用L命名线性表,则其一般表示为
几个概念:
- 是线性表中的“第i个”元素线性表中的位序
注意:位序从1开始数组下标从0开始
- ai是表头元素;an是表尾元素。
- 除第一个元素外,每个元素有且仅有一个直接前驱;除最后一个元素外,每个元素有且仅有一个直接后继
二:基本操作
线性表的基本操作:
- InitList(&L):
初始化表
。构造一个空的线性表L,分配内存空间
。
- DestroyList(&L):
销毁操作
。销毁线性表,并释放
线性表L所占用的内存空间
。
初始销毁c操作实现了:从无到有,从有到无的过程
- ListInsert(&L,i,e)::
插入
操作。在表L中的第i个位置上插入指定元素e。
- ListDelete(&L,i,&e):
删除
操作。删除表L中第i个位置的元素,并用e返回删除元素的值。
- LocateElem(L,e):
按值查找
操作。在表L中查找具有给定关键字值的元素。
- GetElem(L,i):
按位查找
操作。获取表L中第i个位置的元素的值。
- 其他常用操作:
- Length(L):求表长。返回线性表L的长度,即L中数据元素的个数。
- PrintList(L):输出操作。按前后顺序输出线性表L的所有元素值。
- Emptv(L):判空操作。若L为空表,则返回true,否则返回false。
补充:
- 对数据的操作(记忆思路)——— 创销、增删改查
- c语言函数的定义 —— <返回值类型> 函数名 (<参数1类型> 参数1,<参数2类型> 参数2, ……)
- 实际开发中,可根据实际需求定义其他的基本操作
- 函数名和参数的形式、命名都可改变(Reference:严蔚敏版《数据结构》)
可以不按这个做,但是:命名需要有可读性
- 什么时候要传入引用“&” —— 对参数的修改结果需要“带回来”
带回来的意思是:&就是引用数据类型,C++支持。其实可以简单的理解“加&就相当于将该变量的地址进行获取
”
本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)