java笔试题算法-SpellingCorrector-Java8:将PeterNorvig的拼写校正器移植到Java8

时间:2024-06-22 19:47:31
【文件属性】:

文件名称:java笔试题算法-SpellingCorrector-Java8:将PeterNorvig的拼写校正器移植到Java8

文件大小:2.3MB

文件格式:ZIP

更新时间:2024-06-22 19:47:31

系统开源

java笔试题算法Java 中的基本拼写纠正 我最近遇到了一篇关于基本拼写更正的热门文章,网址为 Peter Norvig 在 21 个 Python 代码中实现了一个聪明的算法,现在还有许多其他语言的实现。 我首先注意到第一个 Java 实现有 372 行代码,令人尴尬。 第二个 java 实现有 35 行代码。 那么让我们看看它在 Java 8 中的样子。 23行代码。 (我假设我们只计算非空行并排除导入语句) 我尝试使用像 Streams 这样的现代概念,除了加载字典之外,它看起来像是以函数式风格编写的。 它也是线程安全的,这很好。 显然,这是 Java 并且它是面向对象的。 您可以有多个使用不同词典的实例。 另外,我不敢说,作为 Java,结果证明它慢得令人尴尬。 在 2015 款 MacBook Pro 上测试。 原始 Python 代码 cpython 2.7 11s 2.7 5s 我的 Java 8 代码 Java 1.8.0_73-b02 21s 可能是由于字符串操作缓慢。 这在 Java 中可以做得更快,但也需要更多的代码。 /** * Java 8 Spelling


【文件预览】:
SpellingCorrector-Java8-master
----.gitignore(19B)
----src()
--------SpellingTest.java(2KB)
--------big.txt(6.19MB)
--------tests1.json(4KB)
--------Spelling.java(2KB)
--------tests2.json(9KB)
--------Spelling1Liner.java(2KB)
----README.md(3KB)
----.idea()
--------misc.xml(2KB)
--------encodings.xml(159B)
--------workspace.xml(42KB)
--------uiDesigner.xml(9KB)
--------copyright()
--------compiler.xml(686B)
--------project-template.xml(89B)
--------description.html(97B)
--------modules.xml(258B)

网友评论