什么数据结构在时间和空间上都支持以下集合操作?集合操作的数据结构
- 工会
- 差异
- ismemberof
- 添加
- 删除
我能想到的3点不同的方式来执行这些操作,假设我们有两套,它们的大小都是N:
位阵列:
1. O(N) 2.O(N) 3.O(1) 4.O(1) 5.O(1)
哈希表:
1. O(N) 2.O(N) 3.O(1) 4.O(1) 5.O(1)
有序树:
1. O(NlogN) 2.O(NlogN) 3.O(logN) 4.O(logN) 5.O(logN)
位阵列和Hashtable的速度快,但他们使用了太多的内存,有序树是速度慢,但消耗的内存更少。
请注意:集可以包含其他类型的除了整数,如浮点数或字符串
哪些数据结构是快速和普通,和空间效率?
什么是你正在尝试使用这种数据结构的应用程序? – 2012-08-01 06:14:52
为什么不能哈希表(散集)保存任意(但可比)对象就像一个有序的树? – 2012-08-01 06:16:19
对于日志分析,不是所有的操作都需要,但我很好奇。 – outlaw 2012-08-01 06:16:37