如果把程序看成一辆汽车,那么程序语言就构成了这辆车的车身和轮胎。而算法则是这辆车的核心——发动机。
这辆车跑得是快是慢,关键就在于发动机的好坏(当然轮胎太烂了也不行),而数据结构就是用来改造发动机的。
算法就是程序的灵魂,一个需要实现特定功能的程序,实现它的算法可以有很多种,所以算法的优劣决定着程序的好坏。
在早期的程序员可能对算法的认识不足,认为算法的研究是那些算法工程师的事情,对于普通的编程人员的用处是很小的。
总感觉数据结构和算法是“屠龙技”、“虚招式”,除了面试,工作中根本用不着。
不懂算法,只要编程语言API、开发框架用得熟练,代码照样写得“飞”起来。
语言是大家走向更高级的编程的必经之路,如果不能在算法方面有自己的建树,软件编程做到头也就是一个码农而已。
技术大牛和普通程序员在相同工作时间内,大牛的完成率通常是普通程序员的两倍
这就是数据结构与算法的神奇之处,能帮你码出更快更优质的代码。
普通程序员,只拥有单身20年的手速,只能用框架写CRUD。
高级程序员,必须拥有【数据结构和算法】内功,才能以气驭剑,独霸江湖。