02-线性表和广义表

02-线性表和广义表

线性表

线性表的抽象数据类型描述
类型名称:线性表
数据对象集:线性表是n(≥0)个元素组成的有序序列(a1,a2,...,an)
操作集:线性表L∈List,整数i表示位置,元素X∈ElementType, 线性表基本操作有:

  1. List MakeEmpty(): 初始化一个空线性表;
  2. ElementType FindKth(int K, List L): 根据位序K,返回相应元素;
  3. int Find(ElementType X, List L): 在线性表L中查找x的第一次出现位置;
  4. void Insert(ElementType X, int i,List L):在位序i前插入一个新元素X;
  5. void Delete(int i,List L):删除指定位序i的元素;
  6. int Length(List L): 返回线性表L的长度n;

广义表

广义表是线性表的推广
对于线性表而言,n个元素都是基本的单元素
广义表中,这些元素不仅可以是单元素,也可以是另一个广义表

多重链表

  • 链表中的节点可能同时隶属于多个链
  • 多重链表中节点的指针域会有多个
  • 单包含两个指针域的链表并不一定是多重链表,比如双向链表不是多重链表

多重链表有广泛的用途:基本上如树、图这样相对复杂的结构都可以采用多重链表方式实现存储

posted @ 2022-09-20 11:15  Oh,mydream!  阅读(76)  评论(0编辑  收藏  举报