11 个版本 (6 个重大更新)

0.7.2 2022 年 5 月 20 日
0.7.1 2022 年 5 月 20 日
0.6.0 2022 年 5 月 18 日
0.5.2 2022 年 5 月 18 日
0.1.0 2022 年 5 月 12 日

#374 in 游戏

每月 25 次下载

MIT 许可证

1MB
296

roggle logo

🦀 roggle 🔡

Boggle 求解器包!

crates.io Docs

NPM 包 | Web 示例

关于

你在玩 Boggle 游戏时,是否曾希望知道棋盘上所有可能的解决方案?现在不再需要了!Roggle 是一个 Rust 包,允许你解决任何 N x M 的 Boggle 棋盘。

只需将 N x M 棋盘作为字符串传递,用空格分隔行。对于 Qu 面板,使用 q 作为字母。

示例用法

棋盘

 w  o  d  p
 d  j  i  k
 a  s  o  p
 s  a  Qu s

代码

use roggle;
use std::collections::HashSet;

fn main() {
  let board = "wodp djik asop saqs";
  let solutions: HashSet<String> = roggle::solve(board);
  println!("{:?}", solutions);
}

内部结构

Roggle 使用 Trie 将英语词典分解成易于搜索的树。然后它递归遍历每个棋盘面板,搜索所有邻居以查找可能的单词,直到完成!

词典

使用的词典是 466k 个单词的英语词典。一些单词不是很常见(显然 aaaa 是一个单词),但 Roggle 更愿意展示所有可能性,而不是让你在得分上落后!

就像任何 Boggle 游戏一样,你可以和朋友争论哪些单词是合法的 :)

无运行时依赖