| 查看: 2267 | 回复: 8 | |||
rainchxy木虫 (小有名气)
算法官
|
[交流]
算法为什么那么难?——算法学习秘籍 已有6人参与
|
|
很多人感叹:算法为什么辣么难! 首先,算法本身具有一定的复杂性,还有一个原因:讲的太烂! 算法的教与学有两个困难: (1)我们学习了那些经典的算法,在惊叹它们奇思妙想的同时,难免疑虑重重:这么刁,怎么想到的?对学生来说,这可能是最费解、也最让人窝火的地方。高手讲,学算法要学它的来龙去脉,包括种种证明。但这对菜鸟来说,简直比登天还难,很可能花费很多时间也无法搞清楚。这条路对大多数人来说,是行不通的,那怎么办呢?下功夫去记忆书上的算法?记住这些算法的效率?看似学会了,其实两手空空。遇到一个新问题,仍然无从下手。可这偏偏又是极重要的,无论作研究还是实际工作,一个计算机专业人士最重要的能力,就是解决问题——解决那些不断从实际应用中冒出来的新问题。 (2)算法作为一门学问,有两条几乎平行的线索。一个是数据结构(数据对象):数、矩阵、集合、串、排列、图、表达式、分布等等。另一个是算法策略:贪心、分治、动态规划、线性规划、搜索等等。这两条线索是相互独立的:同一个数据对象(例如图)上有不同的问题,例如单源最短路径和最优二叉树,就可以用到不同的算法策略,如贪婪和动态规划;而同一个算法策略,例如排序和整数乘法,也会用到不同的数据结构。它们之间是多对多的关系。 两条线索交织在一起,该如何表述? 我们早已习惯《数据结构》中讲数据结构,《算法设计与分析》里面讲算法策略。各说各的,讲算法设计时就假设你已经对数据结构了如指掌,还没有哪一本算法书很好的解决这两个困难,传统的算法书,大多注重内容的收录,但却忽视思维过程的展示,因此我们学习了经典的算法,却费解于算法设计的过程。遇到一个实际问题,通过问题分析,选择使用什么样的算法策略,基于这种算法策略选择什么样的数据结构,有时算法策略和数据结构的选择并不是唯一的,不同的算法策略和数据结构设计的算法,其复杂性是不同的。而很多书就是灌输式的讲一个实例,一下子就选择了一个认定是最优的算法策略,告诉你就这样干,不谈数据结构,然后分析算法复杂性,就结束了。原则上讲算法策略就讲算法策略,不依赖任何程序设计语言和数据结构,但对很多学生来讲,尤其是语言没学好,数据结构也不熟练的同学,只讲算法策略,如同空中楼阁。自己用算法解决实际问题,一头雾水。 《趣学算法》,从问题出发,根据实际问题进行分析,选择合适的算法策略,并分析为什么采用这种算法策略,然后选择什么数据结构,不同的数据结构复杂性会有什么区别,巧妙地将数据结构和算法策略拧成了一条线。通过大量实例,充分展现算法设计的思维过程,让学生充分体会遇到一个问题,如何分析,使用什么算法策略,采用什么数据结构,算法的复杂性如何?是否有优化的可能? 西方教育旨在激发学生对世界的好奇心,而在这里,我们培养的是让学生怀着一颗好奇心,思考问题、解决问题的能力。更重要的是——体会学习的乐趣,发现算法的美! 发自小木虫Android客户端 |
» 本帖已获得的红花(最新10朵)
» 猜你喜欢
有没有人能给点建议
已经有5人回复
假如你的研究生提出不合理要求
已经有12人回复
实验室接单子
已经有7人回复
全日制(定向)博士
已经有5人回复
萌生出自己或许不适合搞科研的想法,现在跑or等等看?
已经有4人回复
Materials Today Chemistry审稿周期
已经有4人回复
参与限项
已经有3人回复
对氯苯硼酸纯化
已经有3人回复
所感
已经有4人回复
要不要辞职读博?
已经有7人回复
» 本主题相关价值贴推荐,对您同样有帮助:

送红花一朵
![]() ![]() |
2楼2017-10-19 16:51:02
rainchxy
木虫 (小有名气)
算法官
- 应助: 9 (幼儿园)
- 金币: 2486.2
- 散金: 1300
- 红花: 14
- 帖子: 249
- 在线: 80.3小时
- 虫号: 2676443
- 注册: 2013-09-24
- 性别: MM
- 专业: 计算机应用技术

3楼2017-10-19 17:27:55
4楼2017-10-26 21:50:14
5楼2017-12-01 00:19:06
6楼2018-01-23 12:40:41
rainchxy
木虫 (小有名气)
算法官
- 应助: 9 (幼儿园)
- 金币: 2486.2
- 散金: 1300
- 红花: 14
- 帖子: 249
- 在线: 80.3小时
- 虫号: 2676443
- 注册: 2013-09-24
- 性别: MM
- 专业: 计算机应用技术

7楼2018-01-23 20:51:06
tianwk
至尊木虫 (知名作家)
- 应助: 9 (幼儿园)
- 金币: 1611.7
- 红花: 5
- 帖子: 7500
- 在线: 908.7小时
- 虫号: 2632043
- 注册: 2013-09-03
- 专业: 数理统计
8楼2018-06-07 23:20:12
★
小木虫: 金币+0.5, 给个红包,谢谢回帖
小木虫: 金币+0.5, 给个红包,谢谢回帖
|
本帖内容被屏蔽 |
9楼2018-06-09 13:37:42












回复此楼