致还在学习方向岔道上迷茫,在荒废了大一后想要重整旗鼓的当代计算机大学生。随着时间的推移,计算机技术,变化之大,可以用日新月异来形容。暂存绝对地位的java以及火遍线上线下培训班加入中小学课本的paython,或者已经面临淘汰危险的iOS,似乎就在说明这个变化。越来越多大学生开始焦虑选择困难,是先熟练掌握一门语言,还是先精通计算机的底层。答案是底层,是算法。这无需争论,因为,无论是谁站在反对的一面,都会输的一塌糊涂。
卡内基梅隆大学博士,离职google后开创创新工厂的李开复老师,也曾多次言明过算法的重要性。他说,数据结构、算法、编译原理、计算机体系结构、关系型数据库原理等等这些,远远比日新月异的语言重要的多。这些都是本质,是“万变不离其宗”的东西。
在国外,美国哈佛大学《算法导论》的公开课,已经登上各大网上公开课的界面,供全世界的人学习。微软操作系统的研发更新,谷歌搜索,百度地图导引等等,这些都需要强大的算法理论在背后支撑。
真正学懂计算机的人(不只是“编程匠")都对数学有相当的造诣,既能用科学家的严谨思维来求证,也能用工程师的务实手段来解决问题——而这种思维和手段的最佳演绎就是“算法”。
ACM,相信你并不陌生,一项以三个人为一支队伍,在五个小时之内,对十一个题目通过编程进行解决的同场竞技。发展到如今,很多人都加入了进来,这说明算法已经得到了他们的重视。在大学内,我们还没有走入社会,是还在学习时代,会得到很多人的陪伴和帮助,我们应该好好珍惜。
当然有部分离开ACM的大学生认为,算法除了在ACM竞赛中用到,平时几乎接触不到,把算法看做是一门“不食人间烟火”的学问。