zoukankan      html  css  js  c++  java
  • QMap QHash的选择(QString这种复杂的比较,哈希算法比map快很多)

    QMap QHash有近乎相同的功能。很多资料里面介绍过他们之间的区别了。但是都没有说明在使用中如何选择他们。

    实际上他们除了存储顺序的差别外,只有key操作的区别。

    哈希算法是将包含较多信息的“key”转换成包含信息较少的“key的key”。通过“key的key”查找key,在通过key找到value。

    所以选择上应该考虑如下几点

    1:对于例如QString这种复杂的比较,哈希算法比map快很多。

    2:整数型作为key,不是巨大量,实际上哈希也快不了多少。

    3:哈希表需要额外消耗内存,若条目很多,但是条目本身很小,可能要消耗更多能存。

    所以多数情况下,数值直接做对比,map就可以了。

    如果需要比较的数据比较大,或者比较起来复杂,用hash
    ---------------------
    作者:小舆儿
    来源:CSDN
    原文:https://blog.csdn.net/m15814478834/article/details/21725203
    版权声明:本文为博主原创文章,转载请附上博文链接!

  • 相关阅读:
    sql server 2008 express 使用ip登陆 error:40 错误:2
    C#将Enum枚举映射到文本字符串
    Qt 自定义事件
    constexpr-C++11
    C++11 Lambda表达式(匿名函数)
    Qt5-调试器安装
    Qt5之坐标系统
    八大排序算法总结
    Qt之类反射机制
    Qt5之反射机制(内省)
  • 原文地址:https://www.cnblogs.com/findumars/p/9823981.html
Copyright © 2011-2022 走看看