什么是算法

算法这个名称大家应该通常不陌生,如果你是一个信息相关专业的本科学生,至少在本科一年级或者二年级就接触过不少算法了。随便打开一个人力资源网站去搜搜看“算法工程师”,好的算法工程师的年薪也随便就到三五十万甚至上百万的都有的。

算法是什么?算法可以被理解成为“计算的方法和技巧”,在计算机中的算法大多数就是一些一段或者几段程序,告诉计算机用什么样的逻辑和步骤来处理数据和计算,然后得到处理的结果。

科班出身的信息相关专业的朋友看到这里就比较亲切了,经典的算法有很多,比如“冒泡排序”算法,这几乎是所有以高级语言为依托的《数据结构》的入门必学;再比如“八皇后问题”算法,这几乎也是我们在讲穷举计算时的经典保留算法案例;还有不少我们听说过的算法,比如MD5算法,ZIP2压缩算法等各种不胜枚举的算法。

应该说算法是数据加工的灵魂。如果说数据和信息是原始的食材,数据分析的结论是菜肴,那么算法就是烹调过程;如果说数据是玉璞,数据中蕴含的知识是价值连城的美碧,那么算法就是玉石打磨和加工的机床和工艺流程。

算法在高级语言发展了很多年之后,更多的被封装成了独立的函数或者独立的类,开放接口供人调用,然而算法封装地再好却是不能用纯粹不假思索地使用就能获益的东西,要知道,这些封装只是在一定程度上避免了我们重复发明轮子而已。

大家不要以为算法是算法工程师的事情,跟普通的程序员或者分析人员无关,算法说到底是对处理逻辑理解的问题。

《孙子兵法·作战篇》有云,“不尽知用兵之害者,则不能尽知用兵之利”,意思是说,不对用兵打仗的坏处与弊端进行充分了解的话同样不可能对用兵打仗的好处有足够的认识。算法的应用是一个辩证的过程,不仅在于不同算法间的比较和搭配使用有着辩证关系,在同一个算法中,不同的参数和阈值设置同样会带来大相径庭的结果,甚至影响数据解读的科学性。这一点请大家务必有所注意。

原文发布于微信公众号 - 奇点(qddata)

原文发表时间:2016-01-21

本文参与腾讯云自媒体分享计划,欢迎正在阅读的你也加入,一起分享。

发表于

我来说两句

0 条评论
登录 后参与评论

相关文章

来自专栏新智元

【一图读懂】你不得不知道的10个影响人类社会的算法

【新智元导读】本文的信息图表详细介绍了算法的定义、起源以及 10个重要而且基本的算法,并提出有关算法,尤其是人工智能和深度学习对人类社会、经济的影响的思考。 在...

4146
来自专栏量子位

Google传奇Jeff Dean最新演讲:如何构建未来的机器学习芯片

允中 编译整理 量子位 出品 | 公众号 QbitAI 如何构建未来的机器学习加速芯片? Google大脑负责人Jeff Dean是最有资格回答这个问题的人之一...

35911
来自专栏用户2442861的专栏

网易面试总结(机器学习一些面试)

http://blog.csdn.net/jiejinquanil/article/details/52530922

4641
来自专栏大数据文摘

统治世界的十大算法

2649
来自专栏量子位

机器翻译简史:八十多年来,人类就是要再造一座通天塔

《圣经》中记载,人类曾经联合起来兴建能通往天堂的高塔,为了阻止人类的计划,上帝让人类说不同的语言,使人类相互之间不能沟通,计划因此失败,人类自此各散东西。

1092
来自专栏玉树芝兰

白话本科毕业论文写作

老师把写论文的基本方法告诉了学生,指点他到哪里查资料、读论文。满以为他可以从这些核心期刊上的优秀论文里不仅获取到研究主题、内容与资料,而且还可以学习前辈们写文章...

1042
来自专栏量化投资与机器学习

【解读】遗传基因程序二元机器代码自动归纳合成算法

可能这个算法出来已经一段时间了,今天在一个策略网站上偶然发现,觉得很有意思,因此,查阅了一些资料进行学习。 遗传基因程序二元机器代码自动归纳合成算法(Autom...

2076
来自专栏AI2ML人工智能to机器学习

机器学习平台的优化器 (平台篇)

机器学习的开源平台越来越多了, 绝大部分平台都是牛人读博期间的产物 (所以大家一定要珍惜读博能做开发的日子)。 先说一下, 主流平台也分工业和研究, 大体这...

1200
来自专栏PPV课数据科学社区

一条通往数据科学家的必经之路!

经常有人问我“要成为数据挖掘工程师或者数据科学家应该读什么书?”类似的问题。下面是一份建议书单,同时也是成为数据科学家的指南,当然,这不包括取得合适大学学位的要...

3576
来自专栏程序员叨叨叨

1.4 本书主要内容和结构

本书旨在引导初级 GPU 学习者步入 GPU 编程的大堂,并普及一些在国内资料中较少见到的 GPU 算法,例如光照渲染中的 bank BRDF,以及体绘制中的光...

992

扫码关注云+社区

领取腾讯云代金券