大佬教程收集整理的这篇文章主要介绍了填数字游戏解题机,大佬教程大佬觉得挺不错的,现在分享给大家,也给大家做个参考。
它,是填数字游戏解题机,是本人设计和制作的一种可以解决所有填数字游戏的工具软件。
许多题目/游戏都可以化成填数字游戏。比如幻方、数独、八皇后问题。他们的特点就是拿着一些卡片往一张地图上面填,填了之后就不能移动了。填错之后的移动卡片,不属于这里讲的移动。另一类带有移动的或者吃子的就不属于填数字游戏,比如华容道(一款游戏)有移动,围棋有吃子,象棋既有移动也有吃子。
有了它,直接或者少量地扩展代码就能解决几乎任意填数字游戏,而且由于它采用高级思维,所以解题速度不会很慢。
我们知道人脑的运算速度是很慢的,同时人脑也是很聪明的。比如说,像解数独的时候,人会去寻求比较容易算的格子,然后再去推断其他比较容易算的格子。还发明和应用了很多的法则,可以说这个思考过程是复杂而高级的。经过大自然的筛选和淘汰,证明这种思考方式是行之有效的。制作它的时候,希望模拟这种高级的思维方式。反之,越简单的程序,运行的越快,但是就越接近于穷举,在局部看起来非常快,在整体就显得非常慢了。找一千以内的某个整数,计算机解起来很简单,把1000个数挨个试一遍就行了,而且速度很快。但是人,就不是这么做。人会根据题目,对1000个数进行大量的排除,之后再对剩下的少量的数进行挨个的试。人的解题方式在解决答案的搜索空间更大的题目的时候,更显示出优势。所以,在解决简单问题的时候,局部的快慢起了决定性的因素,而在解决复杂问题的时候整体的快慢才是关键所在。
它的整体解决思路是在能应用高级思维的时候,都尽量的使用高级思维,实在不行了,再使用穷举。也就是说穷举是一种兜底的解决方式,是最后的选项。
应用高级思维,主要在以下这几点:
玩编程十多年来,做过许多大大小小的算法题。已经有点腻了,没新鲜感了。再去写程序解决具体的题目显得有些没意思。要做就做能解决很多题目的程序。
穷举是最容易想到的通用的解决方案,他解决一些很简单的问题还行,解决一些稍微复杂的问题,就会由于需要的计算时间太长而放弃,比如需要计算200年。而人脑,会用以自己的方式去解决这些复杂的问题,有时候效果比计算机好很多。所以这个是我自己反思人脑解决问题的一个过程,并把思考的结果写成程序。它的最大的难点在于需要提取通用的思维方式,而不能引入解决具体问题的特有方式。
如何下载和运行,如何修改代码解决具体的问题,源码下载,请到这里 https://gitee.com/billysir/puzzle-solving-machine
以上是大佬教程为你收集整理的填数字游戏解题机全部内容,希望文章能够帮你解决填数字游戏解题机所遇到的程序开发问题。
如果觉得大佬教程网站内容还不错,欢迎将大佬教程推荐给程序员好友。
本图文内容来源于网友网络收集整理提供,作为学习参考使用,版权属于原作者。
如您有任何意见或建议可联系处理。小编QQ:384754419,请注明来意。