人生最曼妙的风景,竟是内心的淡定与从容!
可以尝试自己用C语言写一下常见的数据结构:栈、队列、堆、平衡二叉树、 B+树、动态数组、哈希表等,针对c++的话可以写自己的迭代器并将基础的数据结构进行面向对象的包装。
《STL源码剖析》实现一个STL好了。
鉴于会有很多人推荐《算法导论》这个大部头,所以在此我推荐《数据结构和算法分析 C++描述》。在我看来,这本书还是很适合楼主进行入门学习的,况且这本书的pdf版网上资源也很多:D
《数据结构和算法分析 C++描述》
虽然问题已经采纳,我还是转一个知乎上的回答,感觉比较靠谱:如何学习数据结构?
1.知乎上确实有比较靠谱的学习轨迹/路线;2.C语言的话当然推荐两本书:《C程序设计语言》和《C Primer Plus》,但是我不太明白为什么最好是电子版的?返回去看不嫌麻烦嘛;3.可以去OJ刷刷题吖,OJ上一般有题型&难易程度的划分;4.我个人觉得,大一上来就学习C语言很可能仅仅是停留在语法层面。当你后期学习了操作系统(Unix/Linux),再回过头去理解C语言,你会有新的理解。所以我建议尝试一下*nix环境下的编程,既能巩固加强你的C语言功底,又能学习操作系统中的数据结构以及操作系统的设计思想。
《STL源码剖析》这本书是不二的选择!除此外,无非以下两种选择:1,国人编著的?浮躁,好书有没有?比最最珍惜的保护动物还少!2,国外大牛的?要么原著英文版的,想看中文版的?你要看真正是谁翻译的!否则比浮躁的国人的垃圾著作还倒胃口!
可以尝试自己用C语言写一下常见的数据结构:栈、队列、堆、平衡二叉树、 B+树、动态数组、哈希表等,
针对c++的话可以写自己的迭代器并将基础的数据结构进行面向对象的包装。
《STL源码剖析》实现一个STL好了。
鉴于会有很多人推荐《算法导论》这个大部头,所以在此我推荐
《数据结构和算法分析 C++描述》
。在我看来,这本书还是很适合楼主进行入门学习的,况且这本书的pdf版网上资源也很多:D
虽然问题已经采纳,我还是转一个知乎上的回答,感觉比较靠谱:如何学习数据结构?
1.知乎上确实有比较靠谱的学习轨迹/路线;
2.C语言的话当然推荐两本书:《C程序设计语言》和《C Primer Plus》,但是我不太明白为什么最好是电子版的?返回去看不嫌麻烦嘛;
3.可以去OJ刷刷题吖,OJ上一般有题型&难易程度的划分;
4.我个人觉得,大一上来就学习C语言很可能仅仅是停留在语法层面。当你后期学习了操作系统(Unix/Linux),再回过头去理解C语言,你会有新的理解。所以我建议尝试一下*nix环境下的编程,既能巩固加强你的C语言功底,又能学习操作系统中的数据结构以及操作系统的设计思想。
《STL源码剖析》这本书是不二的选择!除此外,无非以下两种选择:
1,国人编著的?浮躁,好书有没有?比最最珍惜的保护动物还少!
2,国外大牛的?要么原著英文版的,想看中文版的?你要看真正是谁翻译的!否则比浮躁的国人的垃圾著作还倒胃口!