gpt4 book ai didi

c++ - 如何在 C++ 中使用多个搜索值查找项目?

转载 作者:塔克拉玛干 更新时间:2023-11-03 01:21:55 27 4
gpt4 key购买 nike

概念上我的数据代表一个像这样的表

+-------+------+------+------+------+  
| ID | Val1 | Val2 | Val3 | Val4 |
+-------+------+------+------+------+
| Name1 | a | b | c | d |
| Name2 | a | b | c | e |
| Name3 | h | b | c | d |
| Name4 | i | j | k | l |
+-------+------+------+------+------+

目前我可以自由选择数据的存储方式。本质上,我的 ID 具有一些值,这些值已分配给 ID。一组值对于 ID 是唯一的(不会为另一个 ID 重复任何组)。单个值可以跨 ID 重复。

现在,我需要在 C++ 中做的是使用一组值来查找名称。所以本质上是这样的:

std::string findID(char val1, char val2, char val3, char val4)
{
//Do something to find the corresponding Name

return result;
}

我目前对如何去做这件事有点困惑。我考虑过使用带有元组的映射,但为元组提供散列函数似乎使问题过于复杂。所以基本上就像这里描述的那样:Using tuple in unordered_map

有没有我似乎忽略的更简单的解决方案?

最佳答案

如果所有的值都是字符,我认为你最好将你的表的每一行都转换成字符串,并为情侣ID/stringID提供一个哈希表。当您获得 5 个值作为 char 来测试时,您只需连接它们并运行搜索。

关于c++ - 如何在 C++ 中使用多个搜索值查找项目?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/48425621/

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