什么是Naive algorithm
来源:互联网 发布:软件行业ppt 编辑:程序博客网 时间:2024/05/17 07:09
Naive algorithm
这篇文章是转载来的,这个应该是翻译成朴素算法吧。翻译成简单算法感觉不是很高大上。。读者觉得不对的,请指出。。
源地址:http://wcipeg.com/wiki/Naive_algorithm#
From PEGWiki
An algorithm is said to be naive when it is simple and straightforward but does not exhibit a desirable level ofefficiency (usually in terms of time, but also possibly memory) despite finding a correct solution or it does not find an optimal solution to anoptimization problem, and better algorithms can be designed and implemented with more careful thought and clever techniques. Naive algorithms are easy to discover, often easy to prove correct, and often immediately obvious to the problem solver. They are often based on simplesimulation or onbrute force generation of candidate solutions with little or no attempt atoptimization. Despite their inefficiency, naive algorithms are often the stepping stone to more efficient, perhaps even asymptotically optimal algorithms, especially when their efficiency can be improved by choosing more appropriatedata structures.
For example, the naive algorithm for string searching entails trying to match the needle at every possible position in the haystack, doing anO(m) check at each step (where m is the length of the needle), giving anO(mn) runtime (wheren is the length of the haystack). The realization that the check can be performed more efficiently using a hash function leads to theRabin–Karp algorithm. The realization that preprocessing the needle can allow a failed attempt at matching to be used to rule out other possible positions leads to theKnuth–Morris–Pratt algorithm. The realization that preprocessing the haystack can allow needles to be "looked up" in the haystack rather than searched for in a linear fashion leads to thesuffix tree data structure which reduces string search to mere traversal. All of these algorithms are more efficient than the naive algorithm.
- 什么是Naive algorithm
- 朴素贝叶斯算法(naive Bayes algorithm)
- Naive Bayes algorithm for spam classification (Matlab实现)
- 朴素贝叶斯分类算法(Naive Bayes algorithm)
- Naive
- 什么是启发式算法(heuristic algorithm)?
- 6 Easy Steps to Learn Naive Bayes Algorithm (with code in Python)
- 什么是SPFA(Shortest Path Faster Algorithm)
- 什么是感知器学习算法(Perceptron Learning Algorithm/PLA)?
- Algorithm
- Algorithm
- algorithm
- algorithm
- algorithm
- algorithm
- algorithm
- Algorithm
- Algorithm
- 关于用数组做形参的问题
- Notification PendingIntent NotificationManager
- Android : UI开发ActionBar页眉
- Java 中 重要概念及工具 简述
- 我写过的软件之UniversalTestForSoftcell
- 什么是Naive algorithm
- 做一个新闻阅读类的app(1): 概要设计
- js 解析json 读取List中的实体对象
- Hibernate实战_笔记15(JavaEE服务JTA、JNDI、JMX整合)
- DIKW模型(数据-信息-知识-智慧)
- source 和 sh命令的区别
- ios--常用图片处理技术
- Android自定义边框背景的Toast
- Posex信号量 实现进程间的同步(生产者&消费者)