数据结构的选择-“数组、链表、树、哈希表”选哪个(性能比较)?
来源:互联网 发布:录入数据 英文 编辑:程序博客网 时间:2024/05/17 07:01
通用数据结构貌似包括:数组、链表、树(二叉树、平衡树)、哈希表。之所以称之为通用数据结构是因为它们通过关键字的值来存储、查找数据。
现实中,要想存储人事记录、货存记录、合同表或销售业绩表等数据,则只需要一般用途的数据结构,即通用数据结构即可。至于具体使用哪一种数据结构,可以参考(哥,只是参考)下图:
请不要从上图中得出“平衡树”是最好的结论。咱还是要坚持“具体问题,具体分析”的结论的。
这些最快的结构也是有缺陷的(貌似一定要这样说,才显的严谨、有水平。所以以后出书的时候要记得啊)。首先,它们的程序在不同程度上比数组和链表的复杂;其次,哈希表要求预先知道要存储多少数据,数据对存储空间的利用率也不是非常高。普通的二叉树对顺序的数据来说,会变成缓慢的O(N)级操作(好被啊);而平衡树编起来显然较为困难(对于我这种高人呢)。
摘自:《java数据结构和算法》 图15.1
原帖:http://hi.baidu.com/haifengjava/item/a672923e06c4b3be124b14e9
需要更详细的分析?稍后补充
- 数据结构的选择-“数组、链表、树、哈希表”选哪个(性能比较)?
- 数据结构的选择-“数组、链表、树、哈希表”选哪个(性能比较)?
- 数据结构与算法-“数组、链表、树、哈希表”选哪个(性能比较)?
- 数据结构与算法-“数组、链表、树、哈希表”选哪个
- 各种数据结构性能的比较
- 常见数据结构查找、插入、删除、遍历性能比较 常见排序算法的比较(图)
- 常见数据结构查找、插入、删除、遍历性能比较 常见排序算法的比较(图)
- 常见数据结构查找、插入、删除、遍历性能比较 常见排序算法的比较(图)
- 常见数据结构查找、插入、删除、遍历性能比较 常见排序算法的比较(图)
- 常见数据结构查找、插入、删除、遍历性能比较 常见排序算法的比较(图)
- 性能的比较:数组与ILIST
- C#中各种数组的性能比较
- AS3 Byte数组的重置性能比较
- 数据结构(数组)--冒泡与选择
- oracle和sql server哪个工作(公司)里用的比较多?哪个实用点?
- 性能比较:安全性设计选择
- 性能比较: 安全性设计选择
- Log类选择fwrite或file_put_contents的性能比较(转自 wide288)
- 用R绘制网格
- samba服务器启动
- lua基础学习 - 函数多重返回值,变长参数,具名实参
- VPN和远程桌面连接
- 13.IO流之字符流
- 数据结构的选择-“数组、链表、树、哈希表”选哪个(性能比较)?
- 函数
- 软件架构师的角色定位和培养
- 14.File类
- 求一个数的质因素 因式分解
- word2010 中段落加阴影
- 15.Collections类
- log4j使用
- Ant打包编译部署工具学习笔记