1

我正在寻找一种数据结构来添加、删除、获取和查找类别。

例如:

图书

  • 戏剧
  • 科幻小说
  • 其他

运动的

  • 骑自行车
  • 高尔夫球
  • 团队竞技
    • 足球
    • 足球

等等

例如,我考虑使用C5 集合库中的树,但它看起来只有红黑树。有什么建议么?

4

2 回答 2

5

您可以只创建一个 Category 类来公开其他 Category 实例的列表。

public class Category
{
    public Category()
    {
        this.ChildCategories = new List<Category>();
    }

    public string Name { get; set; }

    public IList<Category> ChildCategories { get; private set; }
}
于 2009-08-25T13:50:46.097 回答
3

树会是一个很好的方法,但我感觉你在想会有一个万能的数据结构,你可以使用它,而这并不是我想象的那样。我同意马克的解决方案,但建议使用字典而不是列表。这样您就可以快速查找类别并获取其子类别。

于 2009-08-25T14:07:04.267 回答