转自 《数据结构(c++语言版)(第三版)》,邓俊辉编著,ISBN: 978-7-302-33064-6
与向量一样,列表也是一种抽象的数据类型。一个单结点包括元素、前驱、后继,列表首尾还有头结点和尾结点。
操作接口 | 功能 |
---|---|
data() | 当前节点所存对象 |
pred() | 当前节点前驱节点的位置 |
succ() | 当前节点后继节点的位置 |
insertAsPred(e) | 插入前驱节点,存入被引用对象e,返回新节点位置 |
insertAsSucc(e) | 插入后继节点,存入被引用对象e,返回新节点位置 |
操作接口 | 功能 | 适用对象 |
---|---|---|
size() | 报告列表当前的规模(节点总数) | 列表 |
first()、last() | 返回首、末节点的位置 | 列表 |
insertAsFirst(e) insertAsLast(e) | 将e当作首、末节点插入 | 列表 |
insertA(p, e) insertB(p, e) | 将e当作节点p的直接后继、前驱插入 | 列表 |
remove(p) | 删除位置p处的节点,返回其数值 | 列表 |
disordered() | 判断所有节点是否已按非降序排列 | 列表 |
sort() | 调整各节点位置,使之按非降序排列 | 列表 |
find(e) | 查找目标元素e,失败时返回null | 列表 |
search(e) | 查找目标元素e,返回不大于e且秩最大的节点 | 有序列表 |
deduplicate() | 剔除重复节点 | 列表 |
uniquify() | 剔除重复节点 | 有序列表 |
traverse() | 遍历并统一处理所有节点,处理方法由函数对象确定 | 列表 |