java 三阶幻方编程,递归-三阶幻方-JAVA-草稿

在中国古典文献中记载了洛书的传说:公元前 23世纪大禹治水之时,一只巨大的神龟出现于黄河支流洛水中,龟甲上有9种花点的图案,分别代表这9个数,而3行、3列以及两对角线上各自的数之和均为15,世人称之为洛书。中国汉朝的数术记遗中,称之为九宫算,又叫九宫图.宋数学家杨辉著《续古摘奇算法》把类似于九宫图的图形命 名为纵横图,书中列举3、4、5、6、7、8、9、10阶幻方。其中所述三阶幻方构造法:“九子斜排,上下对易,左右相更,四维挺出,戴九履一,左七右三,二四为肩,六八为足”,比法国数学家Claude Gaspar Bachet提出的方法早三百余年。

算法:

数组a是九宫格用到的9个数,第一行是数字,第二行是状态(1代表没用过,2代表用过)

数组b是九宫格。如下图:

f0877435e357

使用以上数据结构

方法“put“表示使用数组x去填充数组y,填充其中第n个数字。

f0877435e357

put方法

其中用过的数字标记为0,用完标记回1。如果不是最后一个,则递归填充,是则验证结果。

验证函数如下:

f0877435e357

验证输出函数

验证函数没什么好说的。主函数如下:

f0877435e357

主函数

运行结果如下:

f0877435e357

运行结果

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值