GO·NOTE

一份 Go 开发工程师的学习笔记

0%

各种数据结构优缺点

数组

优点:插入块如果知道坐标可以快速去地存取

缺点:查找慢,删除慢,大小固定

有序数组

优点:比无序数组查找快

缺点:删除和插入慢,大小固定

优点:提供后进先出的存取方式

缺点:存取其他项很慢

队列

优点:提供先进先出的存取方式

缺点:存取其他项都很慢

链表

优点:插入快,删除快

缺点:查找慢

二叉树

优点:查找,插入,删除都快(如果数保持平衡)

缺点:删除算法复杂

红-黑树

优点:查找,插入,删除都快,树总是平衡的

缺点:算法复杂

2-3-4树

优点:查找,插入,删除都快,树总是平衡的。类似的树对磁盘存储有用

缺点:算法复杂

哈希表

优点:如果关键字已知则存取速度极快,插入块

缺点:删除慢,如果不知道关键则存取很慢,对存储空间使用不充分

优点:插入,删除块,对最大数据的项存取很快

缺点:对其他数据项存取很慢

优点:对现实世界建模

缺点:有些算法慢且复杂