社区
Java
帖子详情
请问五子棋如何实现悔棋?
tangzhiyou_1129
2010-12-18 01:42:17
最近在做一个五子棋,做好了人与人对战。怎么样才能完现悔棋功能?请大家给点思路?我看到网上用集合类ArrayList实现。看不懂。。。本人太菜了。
...全文
2005
14
打赏
收藏
请问五子棋如何实现悔棋?
最近在做一个五子棋,做好了人与人对战。怎么样才能完现悔棋功能?请大家给点思路?我看到网上用集合类ArrayList实现。看不懂。。。本人太菜了。
复制链接
扫一扫
分享
转发到动态
举报
AI
作业
写回复
配置赞助广告
用AI写文章
14 条
回复
切换为时间正序
请发表友善的回复…
发表回复
打赏红包
lbsfeihu
2011-05-31
打赏
举报
回复
学习学习,谢谢分享
tangzhiyou_1129
2010-12-18
打赏
举报
回复
to kill0000002
是的。我刚才就是用栈实现的。哈哈。。。谢谢大家的回答。结贴收工了。
sunyiz
2010-12-18
打赏
举报
回复
其实只要用一个List记录棋子的坐标
下棋就是add进去一个
悔棋就remove一个不就OK了?
kill0000002
2010-12-18
打赏
举报
回复
栈你想用什么实现都可以~~~ 在这只是利用一下栈的 先入后出,后入先出 的特性。
下棋 和 悔棋 恰好就满足这个特性。
kill0000002
2010-12-18
打赏
举报
回复
五子棋底层是一个二维数组~~~ 假如 数组的值 *表示黑棋 0表示白棋 -表示未下棋
在底层在用一个栈 存入每次下棋的坐标(记录下棋的坐标) 要悔棋的话 就出栈得到上一步下棋的坐标
有了上一步下棋的坐标,如果要清除棋子 就把对应的二维数组的值改成- 就可以了
当然还有下棋人的顺序~~~ 你可以根据当前下棋人的顺序,在变更一下就对了。
enicyu
2010-12-18
打赏
举报
回复
依据你一共下多少次,定义一个list或数组,没下一步,就保存, 想悔棋就往前就可以了
mopishv0
2010-12-18
打赏
举报
回复
你可以看看 备忘录模式或者 命令模式
前者是将棋盘全部记录下来 后退时恢复
后者是记录每步的落子的命令与参数 恢复时根据参数恢复
tangzhiyou_1129
2010-12-18
打赏
举报
回复
能不能就放在数组里面,栈也可以数组实现?这样 point last[][]=new point[2][15]。last[0]=存入自己的坐标,last[1]=存入别人的坐标。不能多步悔棋。
tangzhiyou_1129
2010-12-18
打赏
举报
回复
打错了。不好意思!清除棋子。
tangzhiyou_1129
2010-12-18
打赏
举报
回复
to kill0000002
谢谢你的回答,这个我也想过。也简单点吗?数据结构的堆栈实现我知道。但是,怎么具体清楚除棋子?
crm9999
2010-12-18
打赏
举报
回复
他不让悔棋,就不要和他下!
kill0000002
2010-12-18
打赏
举报
回复
可以这样 五子棋底层是一个二维数组 可以用*表示黑棋 0表示白棋 &表示最后下的那颗黑棋 o表示最后下的那颗白棋 要悔棋把&或o取消就可以了~~ 但是也只能悔一步
如果要悔多步的把, 可以在底层用一个栈,每走一步就入栈(把当前走的棋子坐标存入),悔棋就出栈(得到上次走棋的坐标)
tangxheng
2010-12-18
打赏
举报
回复
个人觉得做个缓存,之前的数据不要走完就丢了,悔其可等同于走其,只是数据来源不同,其它就看着办吧。
C语言
实现
五子棋
(双人对战,单人对战,
悔棋
等功能).zip
可能使用栈数据结构来存储历史步数,通过“回退”操作
实现
悔棋
。 5. **棋盘表示与更新**:
五子棋
棋盘通常用二维数组来表示,每个元素代表一个棋盘位置的状态(空、黑棋、白棋)。每次下棋时,都需要更新该位置的...
五子棋
游戏
实现
悔棋
功能
通过掌握以上知识点,你将能够构建一个基本的
五子棋
游戏,并
实现
悔棋
功能。在实际开发过程中,还可以考虑增加更多功能,如保存和加载游戏、设置难度等级等,以提高游戏的可玩性和用户体验。学习和实践这些内容将有助...
java
五子棋
可
悔棋
Java
五子棋
是一款基于Java编程语言开发的棋类游戏,主要功能包括玩家通过鼠标操作黑白棋子交替下棋,支持
悔棋
、重新开始游戏、变换背景颜色以及具有图像装饰等功能。这款游戏界面友好,能实时显示鼠标所在位置的行列...
可以
悔棋
的网络版
五子棋
下面,我们将深入探讨网络版
五子棋
的基本规则、
悔棋
机制以及它在网络技术中的
实现
。 一、
五子棋
基本规则
五子棋
,又称连珠,是源自中国的传统棋类游戏,双方各执黑白两色棋子,轮流在棋盘上放置棋子,目标是先形成...
java
五子棋
可以
悔棋
,双人玩
Java
五子棋
游戏是一款基于键盘事件的双人对弈游戏,它允许玩家在游戏过程中进行
悔棋
操作,增加了游戏的趣味性和挑战性。在这个游戏中,两个玩家轮流在棋盘上放置黑白两色的棋子,目标是在棋盘上连成五子以获得胜利。...
Java
51,397
社区成员
85,844
社区内容
发帖
与我相关
我的任务
Java
Java相关技术讨论
复制链接
扫一扫
分享
社区描述
Java相关技术讨论
java
spring boot
spring cloud
技术论坛(原bbs)
社区管理员
加入社区
获取链接或二维码
近7日
近30日
至今
加载中
查看更多榜单
社区公告
暂无公告
试试用AI创作助手写篇文章吧
+ 用AI写文章