目录

数据结构线性表简介

【数据结构】线性表简介

https://i-blog.csdnimg.cn/direct/ed0fa215a8c8453789a3dca920f3b6ab.gif

0.本篇问题

  1. 线性表,顺序表,链表什么关系?它们是逻辑结构还是存储结构?
  2. 线性表的基本操作有哪些?

https://i-blog.csdnimg.cn/direct/aaf9a37cea6340a8910aa244e6c75f6d.png https://i-blog.csdnimg.cn/direct/9160c914acaa4e3ebd159ed762c2d1fc.png 线性表 是具有相同数据元素的有限序列。 表中元素有先后次序,每个元素占有相同大小的存储空间。

一、线性表的相关概念P12

  1. 表头元素
  2. 表尾元素
  3. 直接前驱(前驱) 除表头元素没有前驱,其余每个元素都有一个前驱
  4. 直接后继(后继) 除表尾元素没有后继,其余每个元素都有一个后继
  5. 空表

https://i-blog.csdnimg.cn/direct/1704f635145c4d59a39a7c7b3344c0c8.png

二、线性表的基本操作

因为线性表的实现方式有很多种,可以用顺序表和链表实现,代码也会有所不同,但是线性表要实现的基本操作还是大差不差的。所以本篇只有一个粗略的介绍。具体可看:

线性表的顺序表示👉 👈

线性表的链式表示👉 👈 如果一个操作需要修改线性表的内容就要传需要 被修改的元素 的指针,或者引用(&)C++ ①** InitList(&L) :初始化表,构造一个空的线性表。 ②Length(L)** :求表长。 ③LocateElem(L,e) :在表中查找值为e元素。 ④GetElem(L,i) :获取表中第i个位置的元素的值。 ⑤ListInsert( &L,i,e) :在第i个位置上插入值为e的元素。 ⑥ListDelete( &L,i,&e) :删除第i个元素的位置,并将删除的值返回给e(e是线性表外部定义的变量,要改变它就要传指针或者引用) ⑦PrintList(L) :按顺序输出表的元素。 ⑧Empty(L) :判断表是否为空。 ⑨**DestroyList( &L) **:销毁线性表,释放L所占的空间。


-THE END-