我在寻找一个合理的简单的算法确定它是多么的困难的类型一词的标准布局。

该词不一定是字典的话,那么名单的通常拼写错误的词等不是一个选项。我敢肯定,必须有一个现有的、良好的测算法,但是我找不到任何东西。

任何人都可以提供任何帮助或建议?我编码算法在蟒蛇,但是任何其他语言或伪码是值得欢迎的。

有帮助吗?

解决方案

此比较 在Qwerty,Colemak和Dvorak布局之间,该布局计算了键入的键之间的距离,同一只手上的密钥百分比等。使用Java中的源代码。这些组合的指标应该很好地估计一个单词的“分规性”。

其他提示

拿出你的拼字游戏组,请注意下分,为每个信函,总的成绩的一个词,嘿看你有你的算法。不能确保它完全满足你的要求,但它可能会点你在一个有用的方向。你可能,例如,要指派的成绩不仅对个别的字母,但还要二和三克。

我不知道有任何现有来源的信息需要,也许你可以上来与你自己的字母分通过检查键盘,并分配更高的分数更困难的字母:所以1对于'a'、8为"q",2'm',等等。

编辑:我似乎有困惑的人比我通常做的时候,我的答复。这里的瘦骨嶙峋的人,我建议:

a)列出所有八卦和digrams其发生在英语(或语言)。他们每个人分配一个困难的打字分数。这样做对个人信函(后所有的4个字母的单词可能会组成的一个八卦和一封信函,而不是两个digrams).

b)分困难的打字一个字的总和困难的输入其组成部分。

作为对困难的分数,我不知道,但你可以先从1个字母在家庭键的键盘上,2个一封信,信中使用索引的手指,但是没有一个家庭的关键,3为一封信,信中使用第2或第3手指放在你的手,等等。然后digrams,得分低于简单的字母在左边和右边(或左右)在序列,高于困难的字母一方面按顺序(例如z,虽然这也许不适用于英文)。和你走。

我没有任何算法可以提出建议,但是有一些提示:

  • 我用双手打字,这意味着键盘大致分为两半,我经常在两只手之间遇到协调问题,这意味着每种类型的字母在“正确”的顺序中,但交错是错误的。如果一只手比另一只手要多于另一只手,则尤其如此,因为左手类型 te 和右手类型 h.

  • “滑动”很频繁,这意味着通常会错过钥匙并击中另一个钥匙。 “添加” /“删除”也很频繁,即键入补充键或不够努力 - >这意味着(显然)(显然)的字母越多,就越难以正确。

  • 混合盒使它变得更加困难,需要在推盖和击中钥匙之间进行同步,因此附近的钥匙可能不会具有正确的上/下箱。

希望这可以帮助...

我认为, 曼哈顿距离 算法可能最接近您所看的内容。该算法以四边形方式考虑了目标与源的距离。

至于Python的实现,对于您在Qwerty中的困难需要,您将不得不自己写一个,否则很少会发现曼哈顿距离实现,如果您可以使用Google for``Google for``python)in Puzzle solver''

许可以下: CC-BY-SA归因
不隶属于 StackOverflow
scroll top