基本数据结构复习之图的总结

简介

  • 概念:
    • 由顶点的有穷非空集合和顶点之间边的集合组成, 通常表示为: G(V,E), 其中, G表示一个图, V是图G中顶点的集合, E是图G中边的集合
  • 异同:
    • 线性表中把数据元素叫做元素, 树中将数据元素叫结点, 在图中数据元素叫做顶点(Vertex)
    • 线性表中可以没有数据元素,称为空表; 树中可以没有结点,叫做空树; 图中不允许没有顶点,若V是顶点的集合, 则集合V有穷且非空
    • 线性表中, 相邻的数据元素具有线性关系; 树结构中, 相邻两层的结点具有层次关系; 图中, 任意两个顶点之间都可能有关系, 顶点之间的逻辑关系用边来表示, 边集可以是空

- 阅读剩余部分 -

基本数据结构复习之线性表总结

简介

  • 概念: 零个或多个数据元素的有限序列

抽象数据类型定义

ADT 线性表List
Data
    线性表的数据对象集合为{a1,a2,...,an}, 每个元素的类型均为DataType, 除第一个元素a1外,每一个元素有且只有一个直接前驱元素, 除了最后一个元素an外, 每一个元素有且只有直接后驱元素。数据元素之间的关系是一对一的关系
Operation
    InitList(*L): 初始化操作, 构造一个空的线性表L
    ListEmpty(L): 若线性表L为空表,则返回TRUE,否则返回FALSE
    ClearList(*L): 将线性表置空
    GetElem(L,i,*e):
        初始条件:线性表已存在(1≤i≤ListLenght(L))
        操作结果:用e返回线性表L中第i个数据元素的值
    locatElem(L,e): 在线性表中查找与给定值e相等的元素, 如果查找成功, 返回该元素在表中的序号表示成功; 否则, 返回0表示失败
    ListInsert(*L,i,e)
        初始条件:线性表已存在(1≤i≤ListLenght(L)+1)
        操作结果:在线性表L中第i个数据元素之前插入新元素e,L长度加1
    ListDelete(*L,i,&e)
        初始条件:线性表已存在(1≤i≤ListLenght(L))
        操作结果:删除线性表L中第i个数据元素,用e返回其值,L长度减1
    ListLenght(L)
        初始条件:线性表已存在
        操作结果:返回线性表L数据元素个数
end ADT

- 阅读剩余部分 -