数据结构之线性结构(stack、queue、linklist)概念
2016-04-17 16:03
387 查看
支持的操作
可分为两类操作,查询和修改。query: search(S,k), minimum(S), maximum(S), seccessor(S,x)——x前一个元素, predecessor(S,x)——x后一个元素
modify: insert(S,x) delete(S,x)
stacks
性质:LIFO 后进先出定义:用数组array S[1..n]表示堆,S.top为栈顶,
操作: stackEmpty(S) push(S,x) pop(S)
如图1:
queues
性质: FILO 先进先出定义: 用数组array Q[1..n]表示队列,Q.head为队头,Q.tail为队尾,
操作: enqueue(Q,x) dequeue(Q)
如图2:
doubly linked list
操作:listSearch(L,k) listInsert(L,x) listDelete(L,x)如图3:
circular,doubly linked list with sentinel(哨兵)
如图4:
相关文章推荐
- 数据结构-栈的实现之括号匹配检测
- 数据结构学习-递归(2)
- 【数据结构】 两个栈实现一个队列【面试】
- 归并两个带头结点的递增单链表 结果为递减链表
- 数据结构学习-递归(1)
- 数据结构之递归
- 堆排序 | 数据结构与算法
- 数据结构复习总结
- 20145205 java语言实现数据结构实验一
- redis之数据结构探究
- 树状数组求逆序数
- MySQL索引背后的数据结构及算法原理
- 重学数据结构系列之——图论算法之Dijkstra算法
- 重学数据结构系列之——图论算法之Prim算法
- 数据结构_对称矩阵
- 数据结构之并查集
- 数据结构和算法13 之快速排序
- 数据结构笔记之线性表
- 【数据结构】广义表的默认成员函数、深度、大小、打印
- 栈操作,构造,插入,删除,转换