Haskell中匈牙利环的数据结构

Haskell中匈牙利环的数据结构,haskell,data-structures,Haskell,Data Structures,因此,我正在为哈斯克尔()中的匈牙利环拼图设计一个解算器 我的语言不是很好,仍然有很多盲点。我正在努力弄清楚用什么样的数据结构来表示这个谜题,并希望得到任何提示、提示或答案!(顺便说一句,我目前的想法是将彩色球表示为一系列数字,当谜题解决时,这些数字将按顺序排列)很像,原始模型包含冗余信息,最紧凑的模型取决于对象的形状。因此,一方面,对具有冗余信息的模型的操作可能效率低下,而对紧凑模型(例如置换组)的操作在转换为物理操作时可能非常抽象 所以你可能会发现高阶的置换群更容易描述它;以下是Wikipe

因此,我正在为哈斯克尔()中的匈牙利环拼图设计一个解算器 我的语言不是很好,仍然有很多盲点。我正在努力弄清楚用什么样的数据结构来表示这个谜题,并希望得到任何提示、提示或答案!(顺便说一句,我目前的想法是将彩色球表示为一系列数字,当谜题解决时,这些数字将按顺序排列)

很像,原始模型包含冗余信息,最紧凑的模型取决于对象的形状。因此,一方面,对具有冗余信息的模型的操作可能效率低下,而对紧凑模型(例如置换组)的操作在转换为物理操作时可能非常抽象

所以你可能会发现高阶的置换群更容易描述它;以下是Wikipedia上Rubik's Cube Group的文章:

魔方群是对称群s的子群₄₈ 由对应于六个顺时针立方体移动的六个排列生成

正如luqui所建议的,这很可能对应于一组双端队列,只要考虑到一个队列的一个旋转操作会影响其他队列。

很像,一个简单的模型包含冗余信息,最紧凑的模型取决于对象的一个属性。因此,一方面,对具有冗余信息的模型的操作可能效率低下,而对紧凑模型(例如置换组)的操作在转换为物理操作时可能非常抽象

所以你可能会发现高阶的置换群更容易描述它;以下是Wikipedia上Rubik's Cube Group的文章:

魔方群是对称群s的子群₄₈ 由对应于六个顺时针立方体移动的六个排列生成


正如luqui所建议的,这很可能对应于一组双端队列,只要您考虑到一个队列的一个旋转操作会影响其他队列。

您的链接不起作用(可能是因为我的代理)。你们能描述一下这个难题吗?第一印象:使用四个双端队列,每段一个。我相信okasaki(“纯功能数据结构”)有一个很好的纯deque。您的链接不起作用(可能是因为我的代理)。你们能描述一下这个难题吗?第一印象:使用四个双端队列,每段一个。我相信冈崎(“纯函数数据结构”)有一个很好的纯数据结构。