java数据结构学习笔记(一)综述
2015-08-24 15:56
316 查看
一、数据结构的概述。
数组 优点:插入块,如果知道下标可以非常快地存取。
缺点:查找慢,删除慢,大小固定。
有序数组 优点:比无序数组查找快。
缺点:删除和插入慢,大小固定。
栈 优点:提供后进先出的存取。
缺点:存取其他项很慢。
队列 优点:提供先进先出方式的存取。
缺点:存取其他项很慢。
链表 优点:插入块,删除快。
缺点:查找慢。
二叉树 优点:查找,插入,删除都快(如果树保持平衡)。
缺点:删除算法复杂。
红-黑树 优点:查找,插入,删除都快。树总是平衡的。
缺点:算法复杂。
2-3-4树 优点:查找,插入,删除都快。树总是平衡的。类似的树对磁盘存储有用。
缺点:算法复杂。
哈希表 优点:如果关键字已知则存取极快。插入块。
缺点:删除慢,如果不知道关键字这存取很慢,对存储空间使用不充分。
堆 优点:插入快,删除快,对最大数据项的存取很快。
缺点:对其他数据项存取慢。
图 优点:对现实世界建模。
缺点:有些算法慢且复杂。
数组 优点:插入块,如果知道下标可以非常快地存取。
缺点:查找慢,删除慢,大小固定。
有序数组 优点:比无序数组查找快。
缺点:删除和插入慢,大小固定。
栈 优点:提供后进先出的存取。
缺点:存取其他项很慢。
队列 优点:提供先进先出方式的存取。
缺点:存取其他项很慢。
链表 优点:插入块,删除快。
缺点:查找慢。
二叉树 优点:查找,插入,删除都快(如果树保持平衡)。
缺点:删除算法复杂。
红-黑树 优点:查找,插入,删除都快。树总是平衡的。
缺点:算法复杂。
2-3-4树 优点:查找,插入,删除都快。树总是平衡的。类似的树对磁盘存储有用。
缺点:算法复杂。
哈希表 优点:如果关键字已知则存取极快。插入块。
缺点:删除慢,如果不知道关键字这存取很慢,对存储空间使用不充分。
堆 优点:插入快,删除快,对最大数据项的存取很快。
缺点:对其他数据项存取慢。
图 优点:对现实世界建模。
缺点:有些算法慢且复杂。
相关文章推荐
- 栈和队列数据结构的基本概念及其相关的Python实现
- UVA11990 ``Dynamic'' Inversion (树状数组套平衡树)
- 线性表的链式存储结构及操作
- PE中重要数据结构(winnt.h)
- 数据结构之-堆
- 我知道点redis-数据结构与对象(对象)-对象存储
- 大数据学习之BigData常用算法和数据结构
- Python数据结构之:列表
- C源码@数据结构与算法->LeftistHeap
- 数据结构基础 各种遍历还原二叉树
- 数据结构学习之路-第一章:绪论
- 数据结构学习之路--序
- 数据结构之---C语言实现关键路径AOE图
- 栈和队列数据结构的基本概念及其相关的Python实现
- 数据结构与算法-线性表的实现(1)
- 数据结构与算法-如何计算时间复杂度
- 数据结构与算法-抽象数据类型
- 数据结构与算法-为什么要使用算法
- 数据机构与算法-数据结构的一些基本概念
- 数据结构与算法-函数的渐近增长