顺着上文中对算法的一些理解谈谈刷题,常见的leetcode,剑指offer。 这里我着重讲一下剑指offer。 剑指offer有很多题目其实普通的学生没有人点拨,没有经历过算法竞赛其实很难完全理解。只是会背诵这些题目所谓的最优解毫无意义。 常见的有 剪绳子这道题 其实这道题可以相通于信息的表达,状态空间的构造。 比如,为什么三进制的效率是高于二进制的? 它们其实有相通的地方 再举例,约瑟夫环问题。为什么最优解的方程是那样构建的?为什么解题人会想到这样的方法?其实这可以用运算之间的对应关系去解释。这里我学的并不是特别好啊,应该是和抽象代数中对于一个计算的讨论是相关的。计算和计算是同属于某个状态内的,因此产生了映射关系,做了相互的转换。 再举例,数据流的那个问题。其实和常见的单调队列,更深一点状态机的维护高度相关。 工作之后我研究这些问题的时间并不多了,但我想说,如果只是背题刷题,毫无意义,算法题只是提升我们工程能力,科学思维的一种手段。如果真的像脉脉上那样,动不动就背诵几百个题目的最优解去面试,我想,这是计算机科学学子最大的悲哀
点赞 评论

相关推荐

Z_eus:别打招呼直接发你的优势
点赞 评论 收藏
分享
牛客网
牛客网在线编程
牛客网题解
牛客企业服务