嗨,我写了一个简单的生活游戏代码,其中使用了两个数组,一个保持当前状态,另一个保持下一个状态。
有谁能建议如何优化这个程序的内存消耗理想情况下,我希望它的空间复杂度小于RC。

最佳答案

这取决于你的比赛场地有多稀疏。如果你的游戏场是稠密的,那么任何存储算法的空间复杂度将趋向于RC。(具体来说,RC/2,因为一旦获得的活动单元格比非活动单元格多,那么如果您真的非常关心空间的最佳使用,则可以只存储非活动单元格。)
如果比赛场地是稀疏的,你可以通过简单地存储每个活动单元的坐标对或其他一些sparse matrix structure,来获得一些与活动单元的数量成比例的东西。

关于c - 游戏人生内存优化,我们在Stack Overflow上找到一个类似的问题:https://stackoverflow.com/questions/3554552/

10-12 14:58
查看更多