背景
面试过程中,特别是一些大公司,对于程序员的要求越来越高,你必须会一些和本职工作没什么关系的技能,这样才能使你stand out,面试其实是需要精心准备的,也许你在面试完后,这些东西你都用不到,但是为了那个offer你还是要去准备,这些可以概括为“面试造航母,工作拧螺丝”,另一方面,这些知识其实对我们自身来说是有用的(有用和无用其实不好定义,而且看似无用的东西往往它的生命周期会更长),它能帮我们开阔眼界,系统搭建我们的知识架构,让我们掌握的东西能串起来,而且我们在未来碰到问题的时候可以多一种选择。算法就是这样一个东西。