数据结构(2)-栈和队列和Hash表

2019-02-20  本文已影响0人  tianyl

栈和队列

限定仅在表尾进行的插入和删除操作
栈有顺序存储结构和链式存储结构

队列

队列是只允许在一段进行插入操作,另一端进行删除操作,插入的一段称为队尾,删除的一端称为对头
队列的顺序存储结构
缺点:出队复杂度高O(N)
容易假溢出

队列的链式存储结构,其实就是线性表的单链表,但是它是尾进头出而已。

队列的变形

双端队列Deque,例如:LinkedList/ ArrayDeque/ LinkedBlockingDeque(阻塞的双向队列)
优先级队列,例如,MessageQueue

hash表

hash表的特点

对于顺序表的特点(寻址容易,插入和删除困难)和链表的特点(寻址困难,插入和删除容易)进行综合,出现了一种寻址容易,插入删除也容易的数据结构hash表。

概念

哈希表(Hash table,也叫散列表),是根据关键码值(Key value)而直接进行访问的数据结构,它通过把关键码值映射到表中一个位置来访问记录,以加快查找的速度

关键码值(Key value)也可以当成是key的hash值
这个映射函数叫做散列函数
存放记录的数组叫做散列表

散列函数和散列表

hash表的优缺点

数据结构导读目录

上一篇 下一篇

猜你喜欢

热点阅读