#slice #algorithm #rubiks #rubik

natural_slice

使用Kociemba的算法将切片的一些属性编码为自然数

3个版本

0.1.2 2020年12月26日
0.1.1 2020年12月26日
0.1.0 2020年12月25日

编码类别中排名1493

GPL-3.0 许可证

16KB
268 行(不包括注释)

自然切片编码

将小数据切片的一些属性编码为自然数。

这是切片特定信息的最紧凑表示。

此库的一个用途是高效编码魔方状态,以便使用移动表快速解决魔方。

所有算法均归功于Herbert Kociemba,以及使用这些算法进行快速魔方操作的想法。

置换

将切片元素的置换编码为一个整数,介于 0n! - 1 之间,其中 n 是切片中的元素数量。

有关在魔方上下文中此编码的描述,请参阅“角置换坐标”和“棱置换坐标” 此处

属性

将切片元素的属性编码为一个整数,该属性将每个元素映射到以特定基数为数字,介于 0base^(n - 1) - 1 之间,其中 n 是切片中的元素数量。

有关在魔方上下文中此编码的描述,请参阅“角方向坐标”和“棱方向坐标” 此处

位置

将切片中“有趣”的元素相对于同一切片中的其他元素的位置编码。忽略“有趣”和“无趣”元素之间的相对顺序。

有关在魔方上下文中此编码的描述,请参阅“UD 切片坐标” 此处

依赖项

~760KB
~14K SLoC