经常使用数据结构
栈(Stack)
基本操做
基本特色

- 先进后出,后进先出。
- 除头尾节点之外,每一个元素只有一个前驱和一个后继。
队列(Queue)
基本操做
基本特色
- 先进先出
- 只容许在队列的后端(rear)进行插入操做,在前端(front)进行删除操做
常见实现
- 单向队列 - 使用链表做为基本数据结构,不存在伪溢出问题,没有长度限制,但插入和读取的时间代价较高。
- 循环队列 - 更简单防止伪溢出,但队列大小是固定的。
双端队列(deque,double-ended queue)
基本操做
- 头部插入(push,cons)
- 尾部插入(inject,snoc)
- 头部删除(pop)
- 尾部删除(eject)
- 查看头部(peek first)
- 查看尾部(peek last)
基本特色
链表(Linked List)
基本操做
- 插入(O(1))
- 删除(O(1))
- 查找(O(N))
基本特色
- 是一种线性表,但不会顺序地存储数据,而是在每一个节点存下下一节点的指针(Pointer)。
常见实现
跳跃列表(跳表,Skip List)

散列表(Hash Table)
基本特色
- 以散列函数计算得到的值做为关键字存取内存中的数据结构。
欢迎关注本站公众号,获取更多信息