Java 以随机顺序评估可能性

Java 以随机顺序评估可能性,java,Java,我目前正在编写一个基于改进的深度优先搜索算法的迷宫生成器,但在确定要移动到的单元格时遇到了麻烦。 我的问题是:是否有一种简单的方法可以评估每个相邻单元是否是一个可以随机移动的有效空间?我知道有很多方法可以做到,但我所能想到的是循环,直到找到一个可接受的解决方案,如果可能的话,我希望避免这种糟糕的做法 如果有明显的解决办法,我表示歉意;我对编程和网站都很陌生。你可以在一个数组中添加所有有效的移动,然后生成[0,array.size-1]范围内的随机数,即有效索引,然后使用其中一个有效移动。不需要循

我目前正在编写一个基于改进的深度优先搜索算法的迷宫生成器,但在确定要移动到的单元格时遇到了麻烦。
我的问题是:是否有一种简单的方法可以评估每个相邻单元是否是一个可以随机移动的有效空间?我知道有很多方法可以做到,但我所能想到的是循环,直到找到一个可接受的解决方案,如果可能的话,我希望避免这种糟糕的做法


如果有明显的解决办法,我表示歉意;我对编程和网站都很陌生。

你可以在一个数组中添加所有有效的移动,然后生成[0,array.size-1]范围内的随机数,即有效索引,然后使用其中一个有效移动。不需要循环,而是额外的簿记。由于如何检查移动,我不知道我是否能做到这一点;它们是否有效会在运行中进行评估,我没有数据结构来存储有关它们的信息。基本上,目标是在不重复检查的情况下,以随机顺序检查每个移动是否有效。对数组进行随机排序,我想您可以使用
shuffle
。然后从开始到结束只需在它们上循环。