在Java中用于解码Rubik多维数据集的代码是一种相对简单的算法.效率也很重要,但是次要考虑因素.
执行随机操作,直到获得正确的解决方案.最简单的算法和效率最低的算法.
我发现的最简单的非平凡算法是这样的:
http://www.chessandpoker.com/rubiks-cube-solution.html
编码看起来并不太难.Yannick M.的答案中提到的链接看起来也很好,但" 十字架 "步骤的解决方案看起来可能对我来说有点复杂.
您可能希望了解一些开源求解器实现.这是一个Python实现.此Java小程序还包含一个解算器,并且源代码可用.还有一个Javascript解算器,也有可下载的源代码.
Anthony Gatlin的回答对于Prolog在这项任务中的合适性提出了一个很好的观点.这是一篇关于如何编写自己的Prolog求解器的详细文章.它使用的启发式特别有趣.