c# - 如何遍历树并分组叶子节点?
问题描述
我有一个Entity
可以投资于其他实体的投资者/被投资者类,这些关系由Relationship
该类提供。
public Entity
{
public int Id;
public string Region;
}
public Relationship
{
public int Id;
public Entity Investor;
public Entity Investee;
}
这些被组织成一棵树。使用示例,“实体 A 投资于实体 B 和实体 C”,如下所示:
- 实体 A
- 实体 B
- 实体 C
这也可以被视为Node
一个Node
类可能看起来像的地方
public class Node
{
public Entity Entity;
public List<Node> Children;
}
我希望能够通过该Region
属性对叶节点进行分组。使用我们上面的示例,这会将我们的图表更改为聚合Entity
。
- 实体 A
- 聚合实体
- 实体 B
- 实体 C
- 聚合实体
我将如何遍历树形图以识别可以按Region
属性分组的节点并相应地对它们进行分组?
解决方案
推荐阅读
- tfs - 具有相同项目集合的相同队列的不同队列 ID
- php - PHP - 根据 CSV 中的第一个值创建一个数组
- python - Python 2 到 Python 3:TypeError:“模块”对象不可调用
- reactjs - “sh:1:react-scripts:未找到”在 Docker 中
- java - 如何将此 EgienVector 代码 Python 代码实现为 Java
- java - 无法创建 Spring Boot 启动项目:不可解决
- python - 如何控制一个 html 中显示的项目数?
- javascript - 有条件地隐藏所有帖子上的 div,但不隐藏类别页面
- infinispan - 用于集群企业应用程序的 jboss 数据网格 - 什么是有效的方法
- android - 如何在 appcelerator android 应用程序中显示 admob 广告