设计一款纸片不仅涉及到纸张剪裁问题、色彩问题、精确度问题、便携问题、化学问题、人体工程学问题、机械问题等,当然还涉及人工智能问题。假设有一个智能AI,它在什么情况下使用理排速度和人类玩一款未知的纸牌,这是个很大的问题。假设有一个纸牌大小顺序为:0、1、2、3、4、5、6、7、8、9、A、B、C、D。共四个型款:四边线、倒数线、心摆线(红)、心摆线(黑)。王(两张)由出牌者确定大小王。每个款型十三张加上大小王一共:张牌。如下所示:
如果不是颜色的纸排黑心排线可以填充全黑表示:“ 心摆线(黑)”。
这个4、2、1、5、3序列是通过POWERSHELL随机函数生成。命令如下:
POWERSHELL认为数组在显示时必须每一行是数组的一个元素。所以数组$a只包含1、2、3、4、5并不包含回车换行符。
接下来就可能用POWERSHELL内置随机算法把$a数组内容随机打乱。命如下:
可以看出4、2、1、5、3排列是取的 Get-Random $a -Count $a.length 这个命令产生的结果。
即然可能产生随机数列,那么可以验证排序算法在有限次的排序中算法的正确性。如果有超过一百的数字人很难进行插入排序,这涉及到生理、心理和值不值得的问题。
图一是作者完扑克时的洗牌方法,从计算机角度看效率非常低,也不好拿牌,容易被人窥视。
1、4、2、5、3, 排好后,再取2变成
1、4、空隙、5、3, 把2放在1前面变成
2、1、4、空隙、5、3 再把空隙去掉变成
2、1、4、5、3 第二轮排序排好了