当前位置:  开发笔记 > 人工智能 > 正文

我如何解释"天真的实现"是什么?

如何解决《我如何解释"天真的实现"是什么?》经验,为你挑选了3个好方法。

什么是计算机科学家对"幼稚实施"的意思最清楚的解释?我需要一个很好的清晰的例子来说明 - 理想情况下,即使是非技术人员 - 这种天真的实现在技术上可能是解决问题的有效方法,但实际上完全无法使用.



1> Jon Skeet..:

我试图完全远离计算机.询问听众他们如何在字典中找到条目.(正常的单词定义词典.)

天真的实现是从一开始就开始,看看第一个单词.哦,这不是我们要找的那个词 - 看下一个,等等.值得向听众指出他们可能甚至没有想到这样做的方式 - 我们足够聪明地打折它立即!然而,这是你能想到的最简单的方式.(问他们是否可以想到更简单的东西可能会很有趣,并检查他们是否真的理解为什么它比我们实际做的更简单.)

下一个实现(和一个非常好的实现)是从字典中间开始.我们正在寻找的这个词是在它之前还是之后?如果是之前,请转到开始和我们现在之间的中间页面 - 否则,转到我们现在和结束之间的页面,等等 - 二进制斩.

实际的人类实现是利用我们的信件知识快速到达"几乎正确的地方" - 如果我们看到"大象",那么我们就会知道它将"接近开始"可能约为1/5通过的方式.一旦我们到达E(我们可以进行非常非常简单的比较),我们就会找到EL等.


这里也有机会解释非天真算法的局限性.如果列表没有排序,"智能"方法将无法正常工作,但天真的方法将...好回答,顺便说一句.
咩.一个天真的实现通常是直观的或首先想到的.正如你自己所说,你的类比在这里失败了.

2> Gareth..:

StackOverflow的杰夫阿特伍德有一个很好的例子,一个与洗牌相关的天真算法.



3> dmckee..:

做到最简单,最不麻烦的方法。一个例子是选择排序。

在这种情况下,天真的确实意味着不好或无法使用。这只是意味着不是特别好。


谨记乔恩·斯基特(Jon Skeet)的建议,您可以将选择排序描述为:

    在列表中找到最高值并将其放在第一位

    找到下一个最大值并将其添加到列表中

    重复步骤2,直到用完列表

它很容易做到且易于理解,但不一定是最好的。

推荐阅读
刘美娥94662
这个屌丝很懒,什么也没留下!
DevBox开发工具箱 | 专业的在线开发工具网站    京公网安备 11010802040832号  |  京ICP备19059560号-6
Copyright © 1998 - 2020 DevBox.CN. All Rights Reserved devBox.cn 开发工具箱 版权所有