分类: AI算法
每日算法 — 使用java实现华容道:BFS与启发式搜索
一、游戏介绍与问题建模 华容道是中国古老的益智游戏,以三国时期"曹操败走华容道"的故事为背景。游戏棋盘为 4×5 的矩形,共放置 10 个棋子: 曹操(2×2...
每日算法 — 使用java实现推箱子:BFS与死锁检测
一、游戏介绍与问题建模 推箱子(Sokoban)是一款经典的益智游戏,最早由日本游戏设计师 Thinking Rabbit 于 1982...
每日算法 — 使用java实现俄罗斯方块:贪心评估与遗传算法
一、游戏介绍与问题建模 俄罗斯方块(Tetris)是由俄罗斯程序员阿列克谢·帕基特诺夫于 1984...
每日算法 — 使用java实现数独:回溯法与Dancing Links
一、游戏介绍与问题建模...
每日算法 — 使用java实现扫雷:约束传播与概率推理
一、游戏介绍与问题建模 扫雷(Minesweeper)是微软 Windows 系统自带的经典益智游戏,最早出现在 1990 年的 Windows Entertainment Pack 中,随后成为 Windows...
每日算法 — 使用java实现五子棋:Alpha-Beta剪枝与估值函数
一、游戏介绍与问题建模 五子棋(Gomoku)是一款起源于中国的经典双人策略棋类游戏,与围棋同源但规则更为简洁。游戏在 15×15...
每日算法 — 使用java实现2048:蒙特卡洛搜索与期望极大化
一、游戏介绍与问题建模 2048 是由意大利程序员 Gabriele Cirulli 于 2014 年开发的一款数字滑块益智游戏,一经推出便风靡全球。游戏在 4×4...
每日算法 — 使用java实现线段树:区间查询与懒标记优化
线段树(Segment Tree)是一种基于分治思想的二叉树形数据结构,能够在 $O(\log n)$ 时间内完成区间查询与单点修改。当引入懒标记(Lazy...
每日算法 — 使用java实现井字棋:Minimax与博弈树
一、游戏介绍与问题建模 井字棋(Tic-Tac-Toe),又称三子棋、圈圈叉叉,是全世界最广为人知的双人纸笔游戏。游戏在 3×3...