获取文件夹结构层次结构的最佳数据结构?
问题描述:
我正在创建一个应用程序来组织我的文件和文件夹。文件和文件夹结构将显示在应用程序中。 说为一个例子,客户端将发送我的文件夹结构同文件如下获取文件夹结构层次结构的最佳数据结构?
a
|
|—b— d — a.txt
|— e — b.txt
1.A/B/d/A.TXT
2.A/B/E/b.txt
我第一次创建文件夹a,b,d第二次足以创建文件夹e。
当输入是a/f/g/h/i/j/abc.txt
我应该知道在此创建的最大文件夹是a
- 我应该知道其他文件夹是新的 - 我必须能够创建其余文件夹。
现在我正在做的是解析每个文件级别,并检查它在表中的存在,然后迭代。我想避免每次在每个级别查询表格。所以,我想在树层次结构中进行组织。什么是维护这个文件夹结构的最佳数据结构?树结构后如何解析树?在二叉树中说,它的属性是右边的数据会比根值大,而左边的数据会少于根值。但在这里我没有任何逻辑背后的文件夹树结构。在这种情况下,哪个树实现将套用?
答
您可以有一个自定义树,其中节点可以有任意数量的子节点。类似于
class Node {
public String name;
public List<Node> children;
}
在此实现中,叶子将有一个空/空的子级列表。