jjzjj

currentMove

全部标签

c++ - 使用 std::stack 和 std::map 内存使用率意外高

我正在尝试遍历一棵树,以便访问4x4滑动拼图的所有可能状态。我写的算法最初是递归的,但由于(显然)非常深的树,这被证明是不可能的。它崩溃并报告了段错误。然后我决定重写算法以迭代地完成它的工作,据我所知,它工作得很好。然而,一段时间后,由于交换,它开始大幅减速。我做了一些计算,但无法弄清楚所有这些内存使用量来自哪里......代码贴在下面,但这里是重要的功能:std::stack>stackstd::mapdistanceTable假设stack的内存占用与它包含的元素数量成正比,并假设map相同(其中一个元素是pair),我打印出预期的内存占用量:cout))/(1并将输出与top的输