哪些算法和数据结构是程序员需要掌握的?

编码本质

1

作为一名程序员,大家有没有想过:编码最本质的知识是什么?算法和数据结构或许是,至少很多人这么认为。很多程序员也意识到了算法和数据结构的重要性,下定决心花力气学习它们,于是寻找书籍和视频教程,却发现浩如烟海。好不容易精选了一本后,被书的厚度所折服,看了几页最后不了了之。

精选资料

2

那么,有没有这样的参考资料呢?第一,足够精简;第二,阐述算法和数据结构最重要的知识;第三,在今天这些知识仍被不断运用;第四,足够权威。

一直以来,想寻找这样的资料,很幸运,这几天终于找到一个不错的,出自普林斯顿大学计算机科学与技术系,讲述了computer science 入门级的算法和数据结构,完全吻合了以上四个要求期望:短,精,实用,权威。

资料提纲

3

浏览了这门短、精、实用的算法和数据结构的入门资料,它一共包括5小节和28个高质量的小算法:

  1. Performance 性能. 列举衡量我们所编写程序的性能和资源消耗的科学评价指标和理论。
  2. Sorting and Searching 排序和搜索. 归并排序和二叉搜索,还有几个它们发挥高效之处的应用。
  3. Stacks and Queues 栈和队列. 介绍两个紧密相关的数据结构以及它们如何操作海量数据。
  4. Symbol Tables 符号表. 考虑了典型的被称为符号表的数据结构,它用于存储信息。它的两个高效实现:hash tables (哈希表) 和 binary serach trees (二叉搜索树).
  5. Small World Phenomenon 小世界现象. 这是一个案列,研究了小世界现象(我们都被熟识的一簇人所连接)的原理。

28个小算法题的代码是java版,接下来,我会编写python版的。对于那些没有时间刷 Leetcode 的朋友,研究透这28个,或许对你的算法和数据结构提升有一定帮助。

欢迎关注

4

资料是英文的,接下来会边学边总结,以笔记地形式推送给大家,大家学习同时做了笔记的话,欢迎发给我,让更多的人看到你的所学。

原文发布于微信公众号 - Python与机器学习算法频道(alg-channel)

原文发表时间:2018-06-28

本文参与腾讯云自媒体分享计划,欢迎正在阅读的你也加入,一起分享。

发表于

我来说两句

0 条评论
登录 后参与评论

相关文章

来自专栏程序人生

如何从零开始学一门程序语言?

今天一大早排队挂号给孩子看病,耽搁了,现在才发。 说实话,『能花钱的,就不要花时间』是篇即兴之作,本该随着时间被有限的听众渐渐淡忘。但没想到前有 @老赵 微博转...

3436
来自专栏企鹅号快讯

零基础入门Python,值得推荐的几本书籍!

于我个人而言,我很喜欢Python,当然我也有很多的理由推荐你去学Python我只说两点.一是简单,二是写Python薪资高.我觉得这俩理由就够了,对不对.买本...

24510
来自专栏鸿的学习笔记

关于最近读的书的一些瞎扯

最近两个月是真的忙,忙的公众号都没有坚持更新了。现在我又回来了。在此准备瞎扯几句,顺便推荐下自己的最近读过的书,

802
来自专栏Python中文社区

十本书教你从Pythoner通往Pythonista

1、Python基础教程 本书是经典教程的全新改版,作者根据Python 3.0版本的种种变化,全面改写了书中内容,做到既能“瞻前”也能“顾后”。本书层次鲜明、...

43210
来自专栏PPV课数据科学社区

如果大数据是任何东西……If Big Data Is Anything at All, This Is It

除了我们几个人是第一次听说过“大数据”这个词,我们是在信息技术厂商开着的营销活动以宣传自己的产品和服务的背景下听到它的。正是这种营销活动使得“大数据”这个词取得...

3268
来自专栏小二的折腾日记

不知道怎么开的船?

最近开始再一次准备看数据结构和算法,再一次,是不能再跟闹着玩的一次了。看着实验室最近找工作的师兄师姐,一边心疼他们,一边更心疼明年的自己。所以我也想到了也许很好...

1013
来自专栏Sorrower的专栏

算法怎么玩(一): 从直男到渣男

1882
来自专栏牛客网

腾讯阿里网易游戏华为科大讯飞面经

4389
来自专栏华章科技

PYPL 指数榜:Python 超越 Java 并逐渐拉开差距

此外,JavaScript 和 PHP 在季军位置的争夺上也十分激烈。二者在上半年的指数得分上十分接近,不过本月由于 PHP 出现了 1.5 个百分点的下降,地...

932
来自专栏Java程序员的架构之路

作为程序员,无论你在哪个阶段,这些书都值得你看

我们都想要自己的编程技能能上升到更高级别的水平,但往往不知道从何下手,本文,我将推荐6本书,无论是是什么程序员,这些书都可以让你的能力得到提升

520

扫码关注云+社区

领取腾讯云代金券