如何学习C/C++以及数据结构?

1.大一学过C以及C++,碍于当时不太听课,以及写代码比较少,对于许多的问题理解不到位,但是又多少有基本的了解,最近一年也经常使用PHP,JS,参加一些项目,越发的发现语言的基础功不扎实,以及在数据结构的学习中,越发的感觉语言的功底太差,导致许多的数据结构的代码理解起来有困难。
2.在有一定语言基础的情况下,希望可以有一些提升基础,但又不是特别难的一些书籍,最好是电子版的,或者比较好的blog。
3.数据结构的伪代码实现起来,感觉比较困难,希望可以推荐一些相关的实例代码书籍。
4.或者比较好的学习路线的推荐,关于C后者C++,或者数据结构相关的,提前感谢。

阅读 8.1k
6 个回答

可以尝试自己用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,国外大牛的?要么原著英文版的,想看中文版的?你要看真正是谁翻译的!否则比浮躁的国人的垃圾著作还倒胃口!

撰写回答
你尚未登录,登录后可以
  • 和开发者交流问题的细节
  • 关注并接收问题和回答的更新提醒
  • 参与内容的编辑和改进,让解决方法与时俱进
推荐问题