gpt4 book ai didi

c++ - 搜索可以像 map 一样工作并检索其他信息的数据结构

转载 作者:太空宇宙 更新时间:2023-11-04 06:35:42 25 4
gpt4 key购买 nike

我有以下字符,如果它们在同一个括号中,我想连续为其分配数字。例如

   [a,b],[c],[d,e],[f,g],[h]
a=0, b=1,c=2,d=3,e=4,f=5,g=6,h=7

我想从给定的字符中检索我可以在 C++ 中使用 std::map 执行的数字。但是,一旦我将这些数字分配给 map 。我丢失了 [a,b] 在一个括号中并且 [c] 是分开的信息。我想保留这些信息。

是否有一些我可以使用的数据结构:可以为 [a,b] 分配连续的数字,而且我可以获得 [a,b] 在一个括号中而 [c] 是唯一的信息在括号中。

我的方法是使用 map...但是它不符合我以后要找出 [a,b] 是否在同一个括号中的需要。有人可以建议一种数据结构,以满足我连续分配数字并保留它们属于同一括号的信息的需要。

最佳答案

我不太清楚你在问什么,但这个答案是基于我目前的解释。不能只使用一个值类型来存储有关 char 所在组的额外信息吗?例如:

struct value_type
{
int num;
int group;
};
....
std::map<char, value_type> m;
m['a'].num = 0;
m['a'].group = 0;
m['b'].num = 1;
m['b'].group = 0; // same group as 'a'
m['c'].num = 2;
m['c'].group = 1; // new group
// etc...

// testing if 'a' and 'b' are in the same group
if (m['a'].group == m['b'].group)
...

关于c++ - 搜索可以像 map 一样工作并检索其他信息的数据结构,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/15324509/

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