基于JAVA的实现的16个硬币问题
1.1 题目要求
版本1
参考9枚硬币反面问题的模型,建立16枚硬币反面问题的模型,以及其他结构的模型。
版本2
参考9枚硬币反面问题的解决办法,解决16枚硬币的反面问题。
进一步解决其他结构的反面问题。
版本3
修改硬币翻转规则,如规则改为对角线上的邻居被翻转,或者任意自定义的翻转规则。重新解决上述问题。
1.2 设计思路
本题主要采用图的广度优先算法,仿造九个硬币问题。储存结构为图,逻辑结构为非线性结构。主要的算法是图的最短路径等。
1.3 测试
测试环境
- Windows10
- JDK1.8
- IDEA2017.2
Version1
version2
version3