请原谅我对图论词汇的小知识。
我只能用常见的英语单词来描述这个问题。也许有人可以指出我正确的方向和/或查找的条件。
这个问题是作为可视化编程语言实现的一部分出现的。其中一个顶点是一个函数/方法,边在函数之间传输数据。现在有以下问题:
可以允许将具有Collection< TItem >类型的顶点 A 的输出连接到具有TItem类型的顶点 B 的输入。然后将类型为 TItem 的顶点 B 输出到类型为Collection< TItem >的输入顶点 C 。这将告诉编译器它必须在顶点 B 周围包装一个foreach函数,以将 B 的函数应用于来自 A 的集合中的每个项目,并将新项目作为集合输出到 C 的输入。所以从 A 到 B 的边是多对一连接,从 B 到 C 是一对多。
现在实际的问题是,什么样的算法会找到一个被一对多连接包围/隔离的(有向)子图?以便编译器围绕这个特定的子图包装一个 foreach 函数?我试图想象这张照片中的问题: