擅长:python、mysql、java
<p>我将使用类似于a*寻路算法的方法(只是没有寻路部分)。你知道吗</p>
<ul>
<li>打开列表:<s>放置尚未检查的文件。你知道吗</li>
<li>关闭列表:<s>放置已检查的文件。你知道吗</li>
</ul>
<p>首先将第一个文件添加到openlist;然后遍历openlist中的每个元素。对于每个元素,查找所有文件,对于每个新文件,检查它是否在任一列表中。如果两者都不在,则将其添加到openlist。完成元素后,将其添加到closedlist。你知道吗</p>
<p>这是一种非常有效和干净的方法,可以不重复地遍历所有元素。你知道吗</p>
<p>编辑:在进一步考虑之后,您可以使用一个有序的列表,并遍历它,将新文件添加到列表的末尾。[当前开始]是关闭列表,[当前结束]是打开列表。由于排序和路径开销的计算,A*需要两个列表,但您正在执行完全搜索,因此不需要该功能。然后您只需要为单个列表添加一个“addif not exist”。你知道吗</p>