gpt4 book ai didi

c++ - Qt 中的 O(1) 映射?

转载 作者:搜寻专家 更新时间:2023-10-30 23:04:16 24 4
gpt4 key购买 nike

如果我有一些名字,比如“jenny”“kevin”“miki”......并且他们每个人都有一个相应的 QWidget 来显示他们的信息。是否可以从名称到 QWidget 进行 O(1) 映射?

又名,给定一个名称是否可以在恒定时间内获取其对应的 QWidget?

(我正在做一个中央数据显示应用程序,每个人都会向我发送一个包含他的姓名和 gps 位置的包裹。我需要更新他相应的显示小部件。是否可以在 O(1) 时间内完成每次更新?)

最佳答案

哈希表在最佳情况下确实具有 O(1) 查找:http://en.wikipedia.org/wiki/Hash_table

如果你想在 Qt 中使用它,你可以试试 QHash。 http://doc-snapshot.qt-project.org/qt5-5.4/qhash.html

插入一个值很简单:

hash["jenny"] = myWidget;

并查找:

QWidget myWidget = hash["jenny"];

您可以在此处查看 Qt 容器的算法复杂度:http://doc-snapshot.qt-project.org/qt5-5.4/containers.html#algorithmic-complexity

关于c++ - Qt 中的 O(1) 映射?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/28676761/

24 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com