陈小玉:算法学习建议

陈小玉:算法学习建议_第1张图片

算法学习建议

知识在于积累,学习需要耐力。学习就像挖金矿,或许一开始毫无头绪,但转个角度、换换工具,时间久了总会找到一个缝隙。成功就是你比别人多走了一段路,或许恰恰是那么一小步。

第一个建议:多角度,对比学习。

学习算法,可以先阅读一本简单的入门书,然后综合几本书横向多角度看,例如学习动态规划,拿几本算法书,把动态规划这章都找出来,比较学习,多角度对比分析更清晰,或许你会恍然大悟。或许有同学说我哪有那么多钱买那么多书,只要想学习,没有什么可以阻挡你!你可以联系你的老师,每学期上课前,我都会告诉学生,如果你想学习却没钱买书,我可以提供帮助。想一想,你真的没有办法吗?

第二个建议:大视野,不求甚解。

经常有学生为了一个公式推导或几行代码抛锚,甚至停滞数日,然后沉浸在无尽的挫败感中,把自己弄得垂头丧气。公式可以不懂,代码可以不会。你不必投入大量精力试图推导书上的每一个公式,也不必探究语法或技术细节。学算法就是学算法本身,首先是算法思想、解题思路,然后是算法实现。算法思想的背后可能有高深的数学模型、复杂的公式推导,你理解了当然更好,不懂也没关系。算法实现可以用任何语言,所以不必纠结是C、C++、Java、Python……更不必考虑严格的语法规则,除非你要上机调试。建议还是先领会算法,写伪代码,在大脑中调试吧!如果你没有良好的编程经验,一开始就上机或许会更加崩溃。遇到不懂的部分,浏览一下或干脆跳过去,读完了还不明白再翻翻别的书,总有一天,你会发现“蓦然回首,那人却在灯火阑珊处”。

第三个建议:多交流,见贤思齐。

与同学、朋友、老师或其他编程爱好者一起学习和讨论问题,是取得进步最有效的办法之一,也是分享知识和快乐的途径。加入论坛、交流群,会了解其他人在做什么、怎么做。遇到问题请教高手,会感受到醍醐灌顶的喜悦。论坛和群也会分享大量的学习资料和视频,还有不定期的培训讲座和读书交流会。记住,你不是一个人在战斗!

第四个建议:勤实战,越挫越勇。

实践是检验真理的唯一标准。古人云:“学以致用”“师夷长技以制夷”。请不要急切期盼实际应用的例子,更不要看不起小实例。“不积跬步,无以至千里”,大规模的成功商业案例不是我们目前要解决的问题。看清楚并走好脚下的路,比仰望天空更实际。多做一些实战练习,更好地体会算法的本质,在错误中不断成长,越挫越勇,相信你终究会有建树。

第五个建议:看电影,洞察未来。

不管是讲人工智能,还是算法分析,我都会建议同学们去看一看科幻电影,如《人工智能》《记忆裂痕》《绝密飞行》《未来战士》《她》等。奇妙的是,这些科幻的东西正在一步步地被实现,靠的是什么?人工智能。计算机的终极是人工智能,人工智能的核心是算法。未来的战争是科技的战争,先进的科技需要人工智能。我们的国家还有很多技术处于落后状态,未来需要你。

“一心两本”学习法:一颗好奇心,两个记录本。

怀着一颗好奇心去学习,才能不断地解决问题,获得满足感,体会算法的美。很多科学大家的秘诀就是永远保持一颗好奇心;一个记录本用来记录学习中的重点难点和随时突发的奇想;一个记录本做日记或周记,记录一天或一周来学了什么,有什么经验教训,需要注意什么,计划下一天或下一周做什么。不停地总结反思过去,计划未来,这样每天都有事做,心中会有满满的正能量。

记住没有人能一蹴而就,付出总有回报。

你可能感兴趣的:(拓展阅读,增长见识)