小编Lin*_*und的帖子

Scrabble word finder:使用trie构建trie,存储trie?

我正在做的事情:

  • 构建一个移动Web应用程序,用户可以在玩拼字游戏时获得帮助查找要播放的单词
  • 用户通过键入任意数量的字母和0个或更多通配符来获得单词建议

我是怎么做的:

  • 将MySQL数据库与包含超过400k字的字典一起使用
  • 使用ASP.NET和C#作为服务器端编程语言
  • 使用HTML5,CSS和Javascript

我目前的计划:

  • 使用数据库中的所有单词构建Trie,以便根据用户字母/通配符输入快速准确地搜索单词

如果你不能执行它,有一个计划是不好的,这是我需要帮助的:

  • 如何从数据库构建Trie?(更新:我想使用我的数据库中已有的单词生成一个Trie,完成之后我不再使用数据库进行单词匹配了)
  • 如何存储Trie以便快速方便地访问?(更新:所以我可以删除我的数据库)
  • 如何使用C#根据字母和通配符使用Trie搜索单词?

最后:
非常感谢任何帮助,我仍然是C#和MySQL的初学者,所以请保持温和

非常感谢!

c# mysql trie

7
推荐指数
1
解决办法
3543
查看次数

与通配符的拼字游戏单词发现者

我遇到了一个问题,似乎有些问题出现在我之前,但是我找不到适合我的解决方案.

我目前正在使用C#,MySQL,HTML5和Javascript构建移动Web应用程序.该应用程序将用于帮助用户在玩像Scrabble这样的游戏时找到可玩的单词.

我遇到的问题:如何从包含用户字母输入字典的MySQL数据库中获取正确的单词?

更多细节: - 用户可以输入任意数量的字母,也可以使用通配符(代表任何字母). - 如果用户输入"TEST",则结果不能包含超过1 E和S的单词以及超过2 T的单词,其中包含"TESTER"的结果将是错误的. - 结果不能包含字母数多于输入的字数.

更新:似乎Trie是Eric Lippert 在此提出的问题的解决方案.
问题是我是C#和MySQL的初学者,所以这里有一些后续问题:

  1. 如何从MySQL字典创建Trie?(400k +字)
  2. 如何存储Trie以便快速和将来访问?
  3. 如何使用C#访问Trie并从中提取单词?

非常感谢你的帮助!

c# regex mysql

6
推荐指数
1
解决办法
3900
查看次数

使用html5画布在圆圈中以不同角度显示不同的值

使用HTML5 Canvas和Javascript我需要在圆圈内的不同角度显示不同的值(可能用点表示).

示例数据:
val 34%@ 0°,
val 54%@ 12°,
val 23%@ 70°,
依此类推......

如果我有300 x 300px的画布并且圆的中心位于x:150px且y:150px,半径为150px,我将如何计算在12度时将点设置为54%的位置?

我的数学有点可怕xD

我会感激任何帮助,如果我不够清楚,请提出问题.

感谢您的倾听,并提前感谢您的深刻见解:D

编辑(更详细解释):

这是一张图片来说明我想要完成的任务: 插图:不同角度/度的值

我希望这使我的问题更容易理解.
(如您所见,与上述值不同)

Ty耐心等待!

javascript math html5 canvas degrees

5
推荐指数
1
解决办法
640
查看次数

使用循环和"干净"代码在多个级别添加多个子级

我有一个C#类,可以包含多个级别的多个子级.

手动添加子项看起来像这样:

CustomClass MyClass = new CustomClass(“something”, new List<CustomClass>());
//Level 1
MyClass.Children.Add(“something”, new List<CustomClass>());
//Level 2
MyClass.Children[0].Children.Add(“something”, new List<CustomClass>());
//Level 3
MyClass.Children[0].Children[0].Children.Add(“something”, new List<CustomClass>());
Run Code Online (Sandbox Code Playgroud)

我怎么用干净的循环呢?这样做,感觉"不对":

for (var i = 0; i < 50; i++) {
   //Level 1
   if (i == 0)
        MyClass.Children.Add(“something”, new List<CustomClass>());
   //Level 2
   if (i == 1)
        MyClass.Children[0].Children.Add(“something”, new List<CustomClass>());
   //Level 3
   if (i == 2)
        MyClass.Children[0].Children[0].Children.Add(“something”, new List<CustomClass>());

    // and so on up to 50 levels in this case ...
}
Run Code Online (Sandbox Code Playgroud)

重要更新:在每个级别,我需要检查值是否已经存在,如果不存在,我添加它.

谢谢你的聆听!

我是初学者所以请温柔.

c# children loops

4
推荐指数
1
解决办法
575
查看次数

标签 统计

c# ×3

mysql ×2

canvas ×1

children ×1

degrees ×1

html5 ×1

javascript ×1

loops ×1

math ×1

regex ×1

trie ×1