数据结构与算法-“数组、链表、树、哈希表”选哪个

数据结构与算法-“数组、链表、树、哈希表”选哪个(性能比较)?

通用数据结构貌似包括:数组、链表、树(二叉树、平衡树)、哈希表。之所以称之为通用数据结构是因为它们通过关键字的值来存储、查找数据。

现实中,要想存储人事记录、货存记录、合同表或销售业绩表等数据,则只需要一般用途的数据结构,即通用数据结构即可。至于具体使用哪一种数据结构,可以参考(哥,只是参考)下图:


请不要从上图中得出“平衡树”是最好的结论。咱还是要坚持“具体问题,具体分析”的结论的。

这些最快的结构也是有缺陷的(貌似一定要这样说,才显的严谨、有水平。所以以后出书的时候要记得啊)。首先,它们的程序在不同程度上比数组和链表的复杂;其次,哈希表要求预先知道要存储多少数据,数据对存储空间的利用率也不是非常高。普通的二叉树对顺序的数据来说,会变成缓慢的O(N)级操作(好背啊);而平衡树编起来显然较为困难(对于我这种高人呢)。

 

摘自:《java数据结构和算法》
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值