我正在寻找一个数据结构来添加,删除,获取和查找类别。
例如:
等
我考虑使用C5 collection library中的树,但看起来它只有红黑树。 有什么建议吗?
答案 0 :(得分:4)
您可以创建一个公开其他类别实例列表的Category类。
public class Category
{
public Category()
{
this.ChildCategories = new List<Category>();
}
public string Name { get; set; }
public IList<Category> ChildCategories { get; private set; }
}
答案 1 :(得分:3)
树会是一种很好的方法,但我觉得你认为你可以使用一种适合所有人的数据结构,而这并不是我想象的那样。我同意Mark的解决方案,但推荐使用Dictionary而不是List。这样,您可以查找类别并快速获取其子类别。