百科问答小站 logo
百科问答小站 font logo



能用一种语言独立完成算法导论中 90% 以上的算法属于什么水平? 第1页

  

user avatar   ling-kou-leetcode 网友的相关建议: 
      

如果能用一种语言如 C++, Java 或 Python 完成算法导论 90% 以上的算法, 我们的看法是这是个狼灭(狠人)...

开个玩笑, 言归正传, 我们不妨先来看一下《算法导论》是一本什么样的书和它包括了什么内容。

算法导论简介

《算法导论》英文名为"Introduction to Algorithms", 有时也被称为 CLRS (取自作者四个人名字的首字母), 在计算机领域经典书籍中有时会与SICP(计算机程序的构造和解释), CSAPP(深入理解计算机系统)相提并论。

算法导论是国内外公认的算法学习的经典教材, 国内外很多知名院校如 MIT, CMU 都有开《算法导论》的课。

算法导论与国内编写的算法教材有些许区别, 算法导论讲得很细致, 如果你阅读惯了国内教材, 可能会觉得它有点啰嗦, 这一点可能很适合自学, 但有时候也会像小编自学一样, 卡在某个地方一直想不通, 就一直卡下去...

算法导论具体讲了什么

算法导论从最基本的函数增长率开始讲起, 然后依次讲排序, 散列表, 二叉查找树, 红黑树, B-树, 二项堆, 图算法等。

如果前面这些内容你还可以接受的话, 算法导论后面就如脱缰的野马起飞了, 算法导论最后一章 Selected Topics, 讲了诸如线性规划, FFT(快速傅里叶变换), NP-完备性, 近似算法等精选主题, 可以这么说, 与最后一章相比, 前面的章节可以说是"开胃菜"(当然这"开胃菜"就已经很难了), 后面的章节才是算法导论的精髓. 这章节后面的习题有时则需要查阅相关领域的论文才能完成。

水平层次如何

前面铺垫了这么多, 回到问题上, 如果一个人完成了算法导论 90% 以上的算法, 那他是一个可以徒手实现红黑树, 二项堆, B 树, 网络流等一些高级算法的人, 而这些高级算法与数据结构, 实现起来并不简单, 少则一两百行, 有时候为了优化效率, 可以达到几百行, 说明这个人不仅算法功底深, 工程能力也很强. 甚者, 算法导论的课后习题有时需要查阅论文并复现论文中的算法, 有时候还可能是计算机领域中最最前沿的论文, 这说明这个人科研能力也不错。

总而言之, 这是一个算法功底深, 工程能力强且有一定的科研能力的人才, 力扣相信这样的人不管是做科研还是其它工作, 都将为社会带来巨大的贡献。

对于这种人才, 我们膜拜就好了, 当然我们自己也不用妄自菲薄, 力扣认为其实不用独立完成《算法导论》90%以上的算法, 只要完成了 50% 算法导论中较基础的问题, 分析问题的能力和算法功底都将会得到了大大得锻炼和提高。

最后, 刷《算法导论》的同时, 如果想拿到 Dream Offer, 可能还需要锻炼下将算法灵活运用的能力, 这时候不妨来刷一下力扣, 将大大提高你的实战能力,提高你的面试成功率哦!


欢迎各位知友关注力扣官方微信公众号:「LeetCode力扣」,更多关于程序员面试、技术干货的内容等你来啃!




  

相关话题

  程序员面试,面试官更注重代码量、项目经验还是操作系统、数据结构这种基础课程?两者比例是五五开还是多少? 
  为什么计算机科学专业背景的人喜欢黑机器学习? 
  长得丑的女程序员如何向男程序员讨教如何写代码? 
  有哪些程序员用起来舒适的键盘推荐? 
  请问计算机35岁裁员是真的吗? 
  java为什么不支持泛型数组? 
  开始慢慢抄代码敲对自己编程提高有用吗? 
  假设开发某款软件1个程序员10天可以做好,那么找10个同等水平程序员一起做1天能否做好? 
  WPF中如何在Parallel.For中利用Dispatcher.Invoke实时更新进度条? 
  C#的Lambda表达式捕获变量疑问? 

前一个讨论
搜狗浏览器iOS版下载的视频文件如何批量传到电脑?
下一个讨论
如何评价电视剧《情满四合院》?





© 2024-05-19 - tinynew.org. All Rights Reserved.
© 2024-05-19 - tinynew.org. 保留所有权利