如何基于分隔符映射N个关键字
how to map N keywords based on delimiter
我有N个关键字,可以按如下方式映射:
1,2,3,4----/5,6,7,8----/9,10,11,12----/--------
从上面的行,我应该能够映射1到5,2到6,3到7,等等。我也应该能够将1映射到9,1映射到10,1映射到11,1映射到12,以此类推,我应该能够映射N个组合。我应该让这个泛型在N种组合下都有效。请告诉我怎么做的逻辑
我不确定,但我认为你想要的是这样的映射:Input: 1,2,3,422,23,24,25,103,104,105,106
,最后得到像1->(22)->(103), 2->(23)->(104) etc...
这样的图。要做到这一点,您需要以下元素:
- <
- 列表节点/gh>
- <
- 映射/gh>
您可以编写自己的链表(这是一个很好的练习,不太复杂),或者您可以使用STL/Boost容器之一。一般程序为
- 接受输入
- 验证输入
- 解析输入(到列表/数组或临时变量中)
- 在主列表中创建主节点,或者添加到子列表。(见下文)
你需要一个二维列表。
1 -> 2 -> 3 -> 4
| | | |
22-> 23 -> 24-> 25
| | | |
103->104-> 105->106
所以每个节点都需要至少2个指针(你可以称它们为"右"answers"下",都是NULL为"106"),但它可能会更好有4(上和左,以及…NULL表示"1")。这允许动态调整大小,添加等等…还允许你在每一层有不同数量的映射。我相信有很多方法可以做到这一点。
相关文章:
- Visual Studio 2015:Extern "C" 和 "export" 关键字
- 删除一个线程上有数百万个字符串的大型哈希映射会影响另一个线程的性能
- C++中的"inline"关键字
- C++映射:具有自定义类的运算符[]不起作用(总是返回0)
- 如何确保C++函数在定义之前声明(如override关键字)
- 将函数类成员映射到类本身内部
- 如何在 C# 中映射双 C 结构指针?
- 如何在C++中使用结构生成映射
- 以std::字符串作为关键字,按字典顺序对一个无序映射进行排序
- 使用两种或两种以上数据类型的对象作为c++映射、OOP的关键字
- 以三个无符号字符为关键字的无序映射
- 如何比较两个以std::weak_ptr为关键字的std::映射
- 在std::映射中查找最接近或精确的关键字
- 在指向对象的指针映射上的迭代器作为关键字c++
- 包含一个图形节点作为关键字的无序映射
- C++映射与用于多关键字查找的多映射
- 如何基于分隔符映射N个关键字
- 遍历多映射以查找从给定值到给定关键字的路径
- 如何使用 'auto' 关键字遍历 C++ STL 映射数据结构?
- 检查映射中是否存在关键字,然后更新值