• 强
    2018-09-24
    1、所有数据结构与算法用C++实现一遍;
    2、所有数据结构与算法用Python实现一遍;
    3、学完就辞职。
     74
     2001
  • wean
    2018-09-24
    是什么:
    数据结构指的是“一组数据的存储结构”,算法指的是“操作数据的一组方法”。
    数据结构是为算法服务的,算法是要作用再特定的数据结构上的。
    学什么:
    1. 效率和资源消耗的度量衡--复杂度分析。
    2. 最常用、最基础的20个数据结构与算法,学习他们的:“来历”、“特点”、“适合解决什么问题”和“实际的应用场景”。
    数据结构:数组、链表、栈、队列、散列表、二叉树‘、堆、跳表、图、Tire树
    算法: 递归、排序、二分查找、搜索、哈希算法、贪心算法、分治算法、回溯算法、动态规划、字符串匹配算法
    怎么学
    1. 边学边练,每周花 1~2 小时集中攻关三节课涉及的数据结构和算法,全部写出来。
    2. 主动提问、多思考、多互动。在留言区增加自己的留言。
    3. 自我激励,每次学习完做一篇学习笔记。
    4. 沉下心不要浮躁,先把这些基础的数据结构和算法,还有学习方法熟练掌握后,再追求更高层次。
    ------------
    flag:每篇文章必写学习笔记,每周必实现一次该周代码。
    展开
     2
     896
  • $Jason
    2018-09-24
    BAT我明年年初一定进入一个
     30
     481
  • 187J3X1
    2018-10-01
    https://www.cs.usfca.edu/~galles/visualization/Algorithms.html
    此网站可以将指定算法可视化,能方便理解。麻烦顶上去让更多人看到,谢谢。
     15
     423
  • 一条咸鱼
    2018-09-24
    非科班。。马上就28岁了,一直有个计算机梦。来这学习不为别的,只为能慢慢成为一位合格的计算机人
     6
     371
  • zyzheng
    2018-09-24
    “学习最好的方法是,找到几个人一起学习,一块儿讨论切磋,有问题及时寻求老师答疑。”
    老师说的这个方法非常赞同,之前在学其他内容时经常遇到个人单独学习坚持不下来的问题。这次和公司里有兴趣的同事一起成立了一个五人学习小组,计划每周组织一个小时交流会,每人讲10分钟,自由讨论10分钟,希望能对自己和大家的学习都有帮助,希望能坚持下去✊

    作者回复: 太赞太用心了

    
     203
  • EidLeung
    2018-09-24
    敲代码,回想起自己大学的时候,课本上的每一段代码都敲一边!甚至敲完了整本《C++ primer》😓
     4
     183
  • 觉良
    2018-09-24
    当我们要谈一个事物/概念的时候,需要问自己三个终极问题--是什么?为什么?怎么样?

    什么是数据结构和算法
    数据结构,就是一组数据的存储结构。
    算法,就是操作数据的一组方法。
    数据结构是为算法服务的,算法要作用在特定的数据结构之上。

    为什么需要数据结构和算法
    来谈谈应用层面的原因。在计算机科学和互联网迅猛发展下,需要计算的数据量越来越庞大。但是计算机的计算能力是有限的,这么大量的数据计算,需要越来越多的计算机,需要越来越长的计算时间,注重效率的我们需要尽可能的提高计算效率。其中重要的一项,就是使用合适的数据结构和算法。选用合适的数据结构和算法,特别是在处理体量非常庞大的数据的时候,可以极大提高计算效率。那么,第三个问题来了,我们怎么选用合适的数据结构和算法?有什么衡量标准吗?

    怎么样衡量数据结构和算法
    需要引入一个衡量的标准(metric)---时间复杂度和空间复杂度。
    学习数据结构和算法的基石,就是要学会`复杂度分析`。知道怎么去分析复杂度,才能作出正确的判断,在特定的场景下选用合适的正确的算法。而不是盲目的死记烂背,机械操作。

    在本专栏中,重点学习20个最常用的最基础的数据结构和算法,需要我们逐一攻克。
    10个数据结构: 数组,链表,栈,队列,散列表,二叉树,堆,跳表,图,Trie树
    10个算法: 递归,排序,二分查找,搜索,哈希算法,贪心算法,分治算法,回溯算法,动态规划,字符串匹配算法
    展开

    作者回复: 写的好!

     2
     173
  • zeta
    2018-09-27
    35岁瓶颈失业程序员过来报道,继续精进,顺便当怪给新同学点点赞
     5
     63
  • 吉祥
    2018-09-24
    Flag: 课程内容用 python 实现一遍,有不懂的及时留言提问,每周写总结。
    
     62
  • 墨墨
    2018-09-24
    对于比较笨的我来说,我的学习方法就是边学边练,这个方法务实有效。在此立下flag,不学会数据结构与算法,就掉光头发!哈哈
     1
     55
  • 黄海娜
    2018-09-24
    学习了,也理解了,当时可以写出代码来,但是长时间就忘记了😣,这个难道真的如果日常不用的话,的确会忘记,那是不是就要先当公式一样记下来再说?

    作者回复: 完全不需要死记硬背的,我也记不住快排,红黑树,但是只要你掌握分析的能力,等你真的需要的时候,花不到半个小时就弄懂了。你要记住的是,这些算法的特点,应用场景,用到了能想到他就好了。

    
     52
  • Joshua 兆甲
    2018-09-25
    需要教材吗?老师?
    自己学习的方法: 排个队想到队列,火车进站想到堆栈,看到树上开花想到树的某些指标,导航想到贪心,将生活场景与算法和数据结构的场景结合起来。
    遇到的困难: 应用和实践不行。你看树是数据结构,而大众有更约定俗成的固有看法,切磋估计不大可行,且自己学习,首先需要一个代码开发的条件,不断思考练习,不易坚持。
    数据结构不容易可视化呈现。靠画图建立初始的结构,靠脑补数据变化的过程,再靠心算将结果呈现为“可视”图景。中间,一般在机器上就是简单plain text输入输出.不是第一信号系统,接受收效率慢。
    没有大图景,只有片面观察。即便会了一招半式,获得敢不强,信心不足,真正应用中,或许没有直接上两个循环嵌套来得直接,明了,易懂。容易生出百无一用是书生的瞎想
    以上。老师中秋快乐!循环链表代表我的心。
    展开

    作者回复: 写得好 你可以看看大话数据结构和算法图解。里面的学习方法跟你的很相似

    
     48
  • 与路同飞
    2018-09-24
    完美主义在作怪。在看《算法》这本书的时候,总想着做完所有习题在看后面的章节。导致后面没坚持下去
     1
     47
  • 王宇
    2018-09-24
    我的学习法:
    1.从老师这里获取知识
    2.学习理解知识,继续思考,提出疑问,先自己解决,实在想不出了问老师
    3.总结知识
    4.运用知识,解决问题
    5.写博客教别人学到的知识
    已经意识到算法对面试工作的重要性,也喜欢锻炼自己的思维,想体验不知道哪一天解决了个什么事,突然发现自己变聪明了的快感
    展开
    
     29
  • lxb
    2018-09-24
    我想问问用JavaScript真能实现这些算法跟数据结构吗?

    作者回复: 我觉得能 后面如果你觉得不能你就再给我留言吧

     1
     29
  • SeLiNnnn
    2018-09-25
    现在几乎都是一个人学习 在工作室一待就是一天 因为很有目标和动力 现在不存在坚持不下去的状态 有没有人和我一起都无所谓 享受孤独 孤独让人顽强。况且我就是想提升编程能力 锻炼逻辑 并不是为了考试而学 就是我喜欢我愿意花时间和精力 我非常想变得优秀。加油加油!!我就好好学好好练 每天都鼓励自己。

    作者回复: 加油💪

     3
     23
  • Silence
    2018-09-24
    Flag:在这几个月内一定要掌握并学会运用文中提到的算法,不管多难都要坚持看下去,这次,不想再逃了!
     3
     23
  • 确认过眼神
    2018-09-24
    本人学的Java,想通过这个课程学习如何把数据结构和算法切实的用到编程中,来实现用空间换时间。
    1、提高每个接口的访问速度,可否实现?
    2、时间复杂度越高,执行效率越低吗?
    3、两张表联查后再遍历查询第三张表是否比三张表联查效率高?利用数据结构和算法是否有更优的解决方案?
    希望老师给出三个问题的答案,伙伴们一起讨论。

    作者回复: 1. 学习的过程可以锻炼你的性能意识,写代码的时候会不自觉的考虑性能问题,所以写出低效代码的情况就少了
    2. 理论上是的,但实际上时间复杂度与执行时间并不划等号,我后面会讲到,有时候O(logn)的算法要比O(1)算法还快
    3. 这个没有确切的场景我也不好说,你可以自己测试一下。 一般来说,海量数据的存储一般都是分库分表,所以join操作可能就无法用上了。

     1
     22
  • Yafei
    2018-09-24
    大学学这门课的时候,一碰到那种递归求复杂度就懵逼,这次一定搞定它!
    
     21
我们在线,来聊聊吧