2017-01-06  22:50:43

数据结构和算法

《如何学习数据结构?》:https://www.zhihu.com/question/21318658

《How do I start learning or strengthen my knowledge of data structures and algorithms?》:https://www.quora.com/How-do-I-start-learning-or-strengthen-my-knowledge-of-data-structures-and-algorithms

所以,不要试图记住所有的东西.而是从基础开始,做两件事:

  • 第一件事. 把数据结构图形化,视觉化.(突然想起来我高中竞赛老师说的一句话:数形结合千般好,一旦不做万事休啊! 就是要画图! )在直觉上感受一个数据结构是什么样子的.使用它是什么感觉,抽象上和具体实现上是什么样子的.这就是最重要的事情.并且无论是对于简单的队列,栈还是天杀的平衡树都很重要而且有效.把数据结构画出来,在你的脑袋瓜里面就能想象出来,总之,你需要做的就是,直观的去了解这些数据结构.
  • 第二件事.学习什么时候用什么样的数据结构和算法.对于学生来说这很难,而且你要做作业的时候老师也没告诉你们这该怎么办.╮( ̄▽ ̄")╭ 不过没关系. 你要认识到当你真正处理到现实问题的时候或许你才能掌握某些数据结构,比如哈希表.但是即使是个学生,你也应该知道数据结构的实用性:什么时候你需要个哈希表,什么时候你需要个树,什么时候你需要个堆? 而不是一开始就陷入到追求细节中去.

作者:小鱼二
链接:https://www.zhihu.com/question/21318658/answer/26295370
来源:知乎
著作权归作者所有,转载请联系作者获得授权。

《数据结构和算法动态可视化》:http://zh.visualgo.net/

《Solutions for some common algorithm problems written in Java》:https://github.com/pedrovgs/Algorithms

《Algorithms》:http://algs4.cs.princeton.edu/home/ , https://github.com/kevin-wayne/algs4

本书(《算法》)为计算机科学专业进阶的教材,涵盖了这门学科的核心内容,并能让学生充分锻炼编程、
定量推理和解决问题等方面的能力。

这本书(《算法》)意在接续我们的一本基础教材《Java程序设计:一种跨学科的方法》,那本书对计算机
领域做了概括性介绍。这两本书合起来可用做两到三个学期的计算机科学入门课程教材,为所有学
生在自然科学、工程学和社会科学中解决计算问题提供必备的基础知识。

Sedgewick的《C算法(第3版)》、《C++算法(第3版)》、
《Java算法(第3版)》更适合用做参考书或是高级课程的教材

《Introduction to Programming in Java》:http://introcs.cs.princeton.edu/java/home/

《Algorithms IN JAVA》:https://pan.baidu.com/s/1gePgMxd

Robert Sedgewick:http://www.cs.princeton.edu/~rs/

2017-01-05  21:21:35

ListIterator

An iterator for lists that allows the programmer to (1) traverse the list in either direction, (2) modify the list during iteration, (3) and obtain the iterator's current position in the list.

最新文章

  1. 用python的BeautifulSoup分析html 【转】
  2. wcf使用task实现异步调用
  3. jacob如何获取word文档的页码
  4. XUTils框架的学习(三)
  5. Leetcode 动态规划 Candy
  6. SpringMVC第四篇【参数绑定详讲、默认支持参数类型、自定义参数绑定、RequestParam注解】
  7. 简单的国际化i18n
  8. SLAM+语音机器人DIY系列:(三)感知与大脑——2.带自校准九轴数据融合IMU惯性传感器
  9. Java多线程之二(Synchronized)
  10. python,中使用while...else 和 for...else 还有try...else,另外就是运用with关键字
  11. Confluence 6 使用 JMX 界面实时监控
  12. python __setattr__、__getattr__、__getattribute__全面详解
  13. leetcode 链表类型题总结
  14. git学习笔记:一台电脑上配置两个git账户
  15. scala(二)
  16. ExecutorService的execute和submit方法
  17. github 's usage
  18. php的设计模式
  19. HDU2050 折线分割平面
  20. template <typename T>模板类定义

热门文章

  1. 记一次debug记录:Uncaught SyntaxError: Unexpected token ILLEGAL
  2. opencv源码:cascadedetect
  3. 数据库优化案例——————某市中心医院HIS系统
  4. Entity Framework 6 Recipes 2nd Edition 译 -> 目录 -持续更新
  5. 【原】AFNetworking源码阅读(一)
  6. 23种设计模式--工厂模式-Factory Pattern
  7. Jvm 内存浅析 及 GC个人学习总结
  8. MediatorPattern(中介者模式)
  9. codevs 3289 花匠
  10. CSS命名规范——BEM思想(非常赞的规范)