我想按层次结构对文件名进行排序。
假设我有以下文件夹列表:
D:Movies\Hollywood\Comedy\adultcomedy
D:Movies\Hollywood\Comedy\horrorcomedy
D:Movies\Hollywood\Romantic\ adult
D:Movies\Bollywood\Action\comedy
D:Movies\Bollywood
D:Movies\Hollywood\Comedy
D:Movies\Hollywood
D:Movies
D:Movies\Hollywood\Romantic
我想对它们进行单行排序,这意味着最后一个孩子应该首先排序,祖父母应该作为最后一个孩子排序
(I.e):
- 电影 — 祖父母
- 好莱坞——电影之子
- 宝莱坞 — 电影之子 / Sibiling of Hollywood
- 喜剧——好莱坞之子/电影之孙
- 成人喜剧——喜剧之子/电影的后代
- 恐怖喜剧——喜剧之子/成人喜剧的兄弟姐妹
- 浪漫——好莱坞之子/喜剧兄弟,其他人也一样
在这里,我想将其排序为祖父母的后代。
(即)—>第 4 级是此结构中的极端孙级,这意味着它应该排序:
- 作为第一个元素
adultcomedy
- 然后是它的兄弟姐妹
horrorcomedy
- 第四级孙辈
adult
from Romantic
- then
comedy
from Action
- then
Comedy
这是好莱坞的孩子和父母adultcomedy,horrorcomedy
and
- then
Romantic
- then
Hollywood
- then
Bollywood
- finally
Movies
.
D:Movies\Hollywood\Comedy\adultcomedy D:Movies\Hollywood\Comedy\horrorcomedy D:Movies\Hollywood\Romantic\ adult
D:Movies\Bollywood\Action\comedy D:Movies\Hollywood\Comedy D:Movies\Hollywood\Romantic D:Movies\Hollywood D:Movies\Bollywood
D:Movies
这里我不能使用数组,。只有我可以使用树结构来解决这个问题,
我已经尝试过了。
- 尝试计算长度,但由于动态路径变化而失败
- 检查另一个路径是否有另一个路径的子字符串
但这些算法都不起作用。
了解结构的示例代码:
<forall _="ChildrenWithKey" name="fDir" in="vtList" param="ElementDir" >
<!-- here vtList has element paths as children & all the path has a Key:ElementDir name- alias name, so that we can use this tree anywhere -->
<!-- lets consider the list of paths above mentioned all has a Key:ElementDir -->
None
本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)