广度优先搜索分支因子和深度

时间:2016-05-25 13:09:43

标签: algorithm artificial-intelligence breadth-first-search

BFS

我想知道时间和记忆是如何计算的我试图使用这个O(b ^ d) 但不要给我相同的价值

1 个答案:

答案 0 :(得分:1)

最重要的计算在第二列:完整树中的节点数。其公式在"What is the total number of nodes in a full k-ary tree, in terms of the number of leaves?"的答案中给出。只需将k替换为10,因为您的表格谈到了“分支因子b = 100”

  

N =(10 d + 1 - 1)/ 9

由于某种原因,您提供的表不计算根节点,因为包含根节点,深度为2的树的计数将为111,而不是110.但这只是一个细节。

以秒为单位的时间计算为节点数(即第2列中的值)除以100,000,如脚注所示(“100,000个节点/秒”)。将{h}转换为分钟,小时,天,年等等是quite trivial

脚注进一步提到假设内存消耗“1000字节/节点”,因此它是节点数量乘以(第二个值)的问题然后该表实际使用JEDEC memory standards for storage,其中千字节不是1000字节,而是1024字节。因此,您需要将节点数除以该因子以获得千字节数,然后再次获取兆字节数等等。例如,请参阅"How to convert byte size into human readable format in java?"