发 帖  
原厂入驻New

[经验] LabVIEW Actor Framework学习之N皇后

2020-6-1 19:44:21  361 LabVIEW Actor Framework 面向对象 N皇后
分享
5
哈喽大家好,我是Richie,今天继续给大家分享新的一期,欢迎大家来一起共同学习,共同进步。本期重点:
labview OOP为基础,使用AF(Actor Framework)框架来编写程序,在八皇后的基础上(参见我上期的贴子)对N皇后问题进行求解。
N皇后解算5.gif N皇后解算10.gif
简单介绍:
八皇后问题:在8X8的棋盘上,放置8皇后,让她们互不在各自的攻击路线上(即任意两个皇后均不能互相攻击),具体有几种放置方式呢?
注:每个皇后的攻击范围是其所在行、列及全部斜对角。
而本期要将问题扩展为任意(N)个皇后的求解。
N皇后解算9 含Image.gif
大体思路:
求解思路见我上一期的贴子。思路、解法上基本没有什么太大变化。主要是增加了当根据用户指定棋盘大小(Queen个数)后将棋盘自适应个小功能。本期也弥补上个贴子种八皇后的小Bug。
上期Bug位置及本期修改后代码:如果没有修改,当最后一个Queen一次就放置成功的时候,就不会解算其他结果了。
捕获.JPG
********************************************************************
当然,目前使用的这种算法去尝试20个以上皇后的解算是相当相当耗时的~
当放置第19个Queen时,已经不能在很短时间内放置成功了,我们需要给棋盘一定时间才能稳定下来再放置最后一个Queen。
N皇后解算20.gif
而当棋盘达到40X40的时候那可是相当滴绝望...
N皇后解算40.gif

目前还有很多更好的算法来解决N皇后问题,但我们还是以学习AF框架为主,就不去深研算法问题啦。欢迎大家源代码,多多指点。^-^

AF练习N皇后.zip

下载积分: 积分 -1 分

725.19 KB, 下载次数: 23, 下载积分: 积分 -1 分

efans_776edd 2020-6-2 09:32:55
支持 支持 支持
回复

举报

ln18792513840 2020-6-8 10:38:52
看看,学习一下
回复

举报

走走停停看看丨Haley 2020-6-10 14:39:08
回帖是对作者的基本尊重
回复

举报

ximu6174 2020-7-3 16:38:50
学习!!!!!!!!!!!!
回复

举报

评论

高级模式
您需要登录后才可以回帖 登录 | 注册

声明:本文内容及配图由入驻作者撰写或者入驻合作网站授权转载。文章观点仅代表作者本人,不代表电子发烧友网立场。文章及其配图仅供工程师学习之用,如有内容图片侵权或者其他问题,请联系本站作侵删。 侵权投诉
发经验
关闭

站长推荐 上一条 /7 下一条

快速回复 返回顶部 返回列表