11智能在线
新记
c++ 中 set数据结构和hashset数据结构的查询效率
如题所述
举报该文章
相关建议 推荐于2018-05-04
在STL中,set是以红黑树(RB-tree)作为底层数据结构的,hash_set是以Hash table(哈希表)作为底层数据结构的。set可以在时间复杂度为O(logN)情况下插入、删除和查找数据。hash_set操作的时间复杂度则比较复杂,这取决于哈希函数和哈希表的负载情况。
一般来说,查询的数据量越大,hash_set的性能优势越明显。
温馨提示:内容为网友见解,仅供参考
当前网址:
https://11.t2y.org/zz/ssv2vf82s.html
其他看法
第1个回答 2012-07-14
hashset 不是标准c++里面的,set查询是o(log(n)),要是hash的话理想上是o(1),不过要看冲突,这个效率是不稳定的。
相似回答
大家正在搜
相关问题
C++中set的插入和查找 与二分查找对比 效率如何
以数组为例说明数据结构在程序设计中的作用?(c++)
在java中HashSet的底层数据结构是什么,有什么特点
treeset底层数据结构是什么?如何保证元素的唯一性的呢
TreeSet和HashSet的区别?? 最近学到数据结构,...
set和list有什么区别
java中set和list的区别