gpt4 book ai didi

c++ - 可以处理随机访问和 key 搜索的数据结构是什么?

转载 作者:行者123 更新时间:2023-11-30 02:50:32 25 4
gpt4 key购买 nike

我正在做一个在线数据流分析项目,我有一个非常有趣的问题:

我需要(至少)维护一个查找表,类似于 std::map <user_id, user> , 其中

struct user{
int user_id;
bool sex;
int age;
double score;
};

新用户将被频繁添加和删除,使用user_id作为 key 。我想这很容易。

但是,我还需要按性别和年龄对用户进行分类,类似于组合键。该程序的输出将密集查询诸如“给我所有 34 岁的男性用户”之类的内容。请注意,这部分对复杂性非常敏感。

我看了一下boost::multi-index我发现它就像一个黑盒子,模板让我很困惑。

有没有一种方法可以让我自己定制一个多索引样式的数据结构?任何人都知道如何实现它?

最佳答案

说真的,你认为哪个更容易?

1) 通过阅读文档、在互联网上搜索示例来学习 Boost。

2) 尝试构建您自己的多索引类。

当我说更容易时,我的意思是更容易 (i) 编程,(ii) 维护,(iii) 移交给同事。

学习提升!祝你好运。

[顺便说一句,Boost 通常被视为新功能的测试台,这些新功能最终会成为 C++ 标准库的一部分。例如,shared_ptr。]

关于c++ - 可以处理随机访问和 key 搜索的数据结构是什么?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/20410584/

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