• linkedu视频
  • 平面设计
  • 电脑入门
  • 操作系统
  • 办公应用
  • 电脑硬件
  • 动画设计
  • 3D设计
  • 网页设计
  • CAD设计
  • 影音处理
  • 数据库
  • 程序设计
  • 认证考试
  • 信息管理
  • 信息安全
菜单
linkedu.com
  • 网页制作
  • 数据库
  • 程序设计
  • 操作系统
  • CMS教程
  • 游戏攻略
  • 脚本语言
  • 平面设计
  • 软件教程
  • 网络安全
  • 电脑知识
  • 服务器
  • 视频教程
  • JavaScript
  • ASP.NET
  • PHP
  • 正则表达式
  • AJAX
  • JSP
  • ASP
  • Flex
  • XML
  • 编程技巧
  • Android
  • swift
  • C#教程
  • vb
  • vb.net
  • C语言
  • Java
  • Delphi
  • 易语言
  • vc/mfc
  • 嵌入式开发
  • 游戏开发
  • ios
  • 编程问答
  • 汇编语言
  • 微信小程序
  • 数据结构
  • OpenGL
  • 架构设计
  • qt
  • 微信公众号
您的位置:首页 > 程序设计 >编程问答 > 请教拼图游戏的自动解题算法思路

请教拼图游戏的自动解题算法思路

作者:佚名 字体:[增加 减小] 来源:互联网 时间:2017-06-07

佚名通过本文主要向大家介绍了请教老年人如何壮阳,请教的意思,请教如何选购木地板,请教男睡裤裁剪方法,请教漂亮包包的钩法等相关知识,希望对您有所帮助,也希望大家支持linkedu.com www.linkedu.com
问题:请教拼图游戏的自动解题算法思路
描述:

拼图游戏,喜洋洋拼图游戏,巧虎拼图小游戏,拼图小游戏,手机拼图游戏,拼图游戏大全,熊出没拼图游戏,大型拼图游戏,拼图游戏单机版,儿童拼图游戏,拼图小游戏大全,儿童智力拼图游戏,儿童拼图小游戏,恐龙拼图小游戏,奥特曼拼图小游

如图这样的拼图游戏,应该都玩过吧,最终要还原到按顺序排列的状态。
还有个问题是判断局面是否有解,随机生成的局面不一定能还原,但我觉得自动解题搞得定的话这个应该也一并解决掉了。。。


解决方案1:

我用c#winform写了这个AI算法, [rar文件] 拼图AI(c#源码八勺) 你可以去csdn下载 http://download.csdn.net/detail/bashao4/5656001

解决方案2:

其实, 这个游戏根本都不要搜索,先不管游戏无解的情况。有一种很简单的解题方法:
按照1 - 8 的顺序一个一个移过去就行了

代码也很好写

解决方案3:

不要完全随机的生成一个局面,而是从拼好的局面去打乱它生成新的局面.完全随机生成能还原的局面的概率很小.我觉得这个问题完全随机生成局面(n个格子的矩阵,内有n-1个元素)有解的概率是 n*(n-1)/n! = 1/(n-2)!

解决方案4:

基本思路就是递归搜索,搜索时标记状态,如果某个状态已经reach 过,就 pass。时间、空间复杂度都是 N! (N 是拼图的格子数量), 增长很快。

3*3 的矩阵也就 9! = 40320 种不同状态,搜索速度很快。

更大的矩阵就慢了。

解决方案5:

经典的八数码问题,可以用
搜索+康托展开排重

当然学AI的时候这题是经典的Astar算法练习题

当然还可以双向广搜

注:是否有解,可以通过判断逆序数的奇偶判断


分享到:QQ空间新浪微博腾讯微博微信百度贴吧QQ好友复制网址打印

您可能想查找下面的文章:

  • 请教:写好的web如何让其他人访问
  • 请教,怎么用python做简单的像素级碰撞检测
  • 请教如何模拟如下地址
  • 请教上传的视频如何获取其某一个帧的截图啊?
  • 正则表达式请教一个正则表达式,限制只能输入正确的数字字符串
  • 再次请教如何用python下载这个网页的torrent文件?
  • 请教:怎样用Python编写一个Linux环境下的可视界面?
  • 请教上传代码到github的步骤
  • 请教一下github上淘宝那个nginx文档怎么部署到本地的
  • 请教如何修改github上仓库的项目的语言类型?

相关文章

  • 2017-06-07 laravel的entrust这个包,控制角色的访问目录,思路要点大概是怎样?
  • 2017-06-07 JBOSS启动问题
  • 2017-06-07 域名不可用,请更换其他域名
  • 2017-06-07 Python:IDLE中无法显示raw_input的内容
  • 2017-06-07 laravel(laravel)php-fpm性能问题
  • 2017-06-07 (python)我在阿里云上买了云服务,把html上传到什么位置可以访问?
  • 2017-06-07 (python)SqlAlchemy中,一个query如何多次执行filter添加or条件?
  • 2017-06-07 七牛如何把word文件转pdf,pdf文件转图片,是否有这个功能
  • 2017-06-07 (python)迭代器的返回值为什么需要加入到列表才可以大运
  • 2017-06-07 Hibernate使用sql进行两表查询,在线等,急急急

文章分类

  • JavaScript
  • ASP.NET
  • PHP
  • 正则表达式
  • AJAX
  • JSP
  • ASP
  • Flex
  • XML
  • 编程技巧
  • Android
  • swift
  • C#教程
  • vb
  • vb.net
  • C语言
  • Java
  • Delphi
  • 易语言
  • vc/mfc
  • 嵌入式开发
  • 游戏开发
  • ios
  • 编程问答
  • 汇编语言
  • 微信小程序
  • 数据结构
  • OpenGL
  • 架构设计
  • qt
  • 微信公众号

最近更新的内容

    • jsp做登录界面
    • pythonfors60用python抓包
    • (golang)关于go语言获取远程包的一个小疑问?
    • 请问创建空间有数量上限吗
    • pythonHTTP_Proxysocketserver请求问题?
    • (golang)Go调用dll问题
    • pythonfor
    • 正则表达式不才,求一个正则表达式
    • 不会算法和数据结构,永远感觉低人一等
    • 为什么seam的那个wiki例子跑不起来~~

关于我们 - 联系我们 - 免责声明 - 网站地图

©2020-2025 All Rights Reserved. linkedu.com 版权所有