相关疑难解决方法(0)

查找地图的映射值

在C++中有没有办法搜索映射的映射值(而不是键),然后返回密钥?通常,我会someMap.find(someKey)->second得到值,但在这里我想做相反的事情并获得密钥(值和密钥都是唯一的).

c++ dictionary stdmap find

40
推荐指数
5
解决办法
6万
查看次数

试图分组价值?

我有一些这样的数据:

1 2
3 4
5 9
2 6
3 7
Run Code Online (Sandbox Code Playgroud)

我正在寻找这样的输出(group-id和该组的成员):

1: 1 2 6
2: 3 4 7
3: 5 9
Run Code Online (Sandbox Code Playgroud)

第一行因为1"连接"到2而2连接到6.第二行因为3连接到4而3连接到7

这对我来说就像一个图遍历,但最终的顺序并不重要所以我想知道是否有人可以建议一个更简单的解决方案,我可以在大型数据集(数十亿条目)上使用.


来自评论:

  • 问题是在给定一组边缘的情况下找到一组不相交的子图.
  • 边缘没有定向; 线"1 2"表示1连接到2,2连接到1.
  • 样本输出中的"1:"可以是"A:"而不改变答案的含义.

编辑1:

问题现在解决了.感谢大家的帮助.我需要更多帮助,选择可用于数十亿这类条目的最佳解决方案.

编辑2:

测试输入文件:

1 27
1 134
1 137
1 161
1 171
1 275
1 309
1 413
1 464
1 627
1 744
2 135
2 398
2 437
2 548
2 594
2 717
2 738
2 783
2 798
2 912
5 74
5 …
Run Code Online (Sandbox Code Playgroud)

php c++ python algorithm graph

5
推荐指数
1
解决办法
717
查看次数

标签 统计

c++ ×2

algorithm ×1

dictionary ×1

find ×1

graph ×1

php ×1

python ×1

stdmap ×1