数据结构之线性表ArrayList小结(一)
2016-03-26 14:09
344 查看
1、线性表特点简记
(1)存在唯一“第一个”
(2)存在唯一“最后一个”
(3)除第一个其余仅有一前驱
(3)除最后一个其余仅有一后驱
2、线性表抽象定义
ADT List{
数据对象:D={a[i]|a[i]∈ElemSet,i=1,2,…,n,n>=0}
数据关系: R1={ (a[i-1],a[i]) |a[i-1],a[i]∈D,i=2,…,n} 基本操作:
(1)InitList(&L)
//构造一个空表L
(2)DestroyList(&L)
(3)ClearList(&L)
//在线性表L存在的前提下重置为空表
(4)ListEmpty(L)
//在线性表L存在的前提下判断是否为空表
(5)ListLength(L)
//在线性表L存在的前提下返回元素个数
(6)GetElem(L,i,&e)
//在线性表L存在的前提下用e返回第i个元素值
(7)LocateElem(L,e,compare())
//在线性表L存在的前提下,compare()为数据元素判定函数
(8)PriorElem(L,cur_e,&pre_e)
//在线性表L存在的前提下,用pre_e返回cur_e的前驱
(9)NextElem(L,cur_e,&next_e)
//在线性表L存在的前提下,用next_e返回cur_e的后继
(10)ListInsert(&L,i,e)
//在线性表L存在的前提下,在L中第i位插入e元素,长度+1
(11)ListDelete(&L,i,&e)
/在线性表L存在的前提下,删除L中第i位,e元素返回其值,长度-1
(12)ListTraverse(L,visit())
//在线性表L存在的前提下,对L中每个元素调用visit()函数
}ADT List
(1)存在唯一“第一个”
(2)存在唯一“最后一个”
(3)除第一个其余仅有一前驱
(3)除最后一个其余仅有一后驱
2、线性表抽象定义
ADT List{
数据对象:D={a[i]|a[i]∈ElemSet,i=1,2,…,n,n>=0}
数据关系: R1={ (a[i-1],a[i]) |a[i-1],a[i]∈D,i=2,…,n} 基本操作:
(1)InitList(&L)
//构造一个空表L
(2)DestroyList(&L)
(3)ClearList(&L)
//在线性表L存在的前提下重置为空表
(4)ListEmpty(L)
//在线性表L存在的前提下判断是否为空表
(5)ListLength(L)
//在线性表L存在的前提下返回元素个数
(6)GetElem(L,i,&e)
//在线性表L存在的前提下用e返回第i个元素值
(7)LocateElem(L,e,compare())
//在线性表L存在的前提下,compare()为数据元素判定函数
(8)PriorElem(L,cur_e,&pre_e)
//在线性表L存在的前提下,用pre_e返回cur_e的前驱
(9)NextElem(L,cur_e,&next_e)
//在线性表L存在的前提下,用next_e返回cur_e的后继
(10)ListInsert(&L,i,e)
//在线性表L存在的前提下,在L中第i位插入e元素,长度+1
(11)ListDelete(&L,i,&e)
/在线性表L存在的前提下,删除L中第i位,e元素返回其值,长度-1
(12)ListTraverse(L,visit())
//在线性表L存在的前提下,对L中每个元素调用visit()函数
}ADT List
相关文章推荐
- Python动态类型的学习---引用的理解
- 我是运营,我没有假期
- 土人系列AS入门教程 -- 对象篇
- DB2数据库的安装
- C#实现把指定数据写入串口
- “传奇”图象数据存储方式
- C#托管堆对象实例包含内容分析
- 修复mysql数据库
- C#实现获取不同对象中名称相同属性的方法
- javascript asp教程第十一课--Application 对象
- 浅析SQL数据操作语句
- SQLServer 数据导入导出的几种方法小结
- 简述MySQL分片中快速数据迁移
- MySQL数据备份之mysqldump的使用详解
- PowerShell中使用Out-String命令把对象转换成字符串输出的例子
- C#实现窗体间传递数据实例
- VBS教程:对象-正则表达式(RegExp)对象
- C#中的委托数据类型简介
- C#检查指定对象是否存在于ArrayList集合中的方法
- 给你的数据库文件减肥