我有大约200个嵌套的类别。我目前正在阅读关于C5泛型库的文档。我不确定C5库是否过度杀伤。我正在考虑将所有自定义算法转换为C5实现。
这就是我需要的。如果选择某个类别,我需要找到其父母,兄弟姐妹,直接子女和所有孩子。
这就是我设置它的方式。找到:
父母: 我从当前位置开始然后遍历列表并找到当前父级。当我找到父母时,我再次遍历整个列表以找到下一个父母,依此类推。
兄妹: 我循环遍历整个列表,找到与选择节点具有相同父节点的所有节点。
直接孩子: 我循环遍历整个列表,找到所选择的节点的父节点。
所有儿童: 这个花了我一段时间才弄明白。但我使用递归来查找选择节点的所有子节点。
有没有更好的方法来实现这样的东西?
答案 0 :(得分:2)
为什么必须以收藏为基础?我只想创建包含属性Category
和Category Parent
的课程IList<Category> Children
。这样,找到父母或前辈真的很容易(而且快!),找到孩子,兄弟姐妹是父母的孩子,除了当前的类别,所以他们也很容易。找到后代是微不足道的递归。