目录

1.职业规划。

2.刷题。

3.看书。

《剑指offer》

《数据结构算法与应用:C++语言描述 》

《Effective C++》

《C与指针》

4.异步刷题。

5.未来。

C/C++

TCP/IP 和网络编程

Linux服务器开发

其它


这也是一个总结2018年7月的博文。

1.职业规划。

在各公司的招聘网站看岗位需求具备的条件。我确定了求职大方向。c++工程师和算法工程师(图像处理;视觉开发)。

我的offer之路(一)-LMLPHP

可见这两个岗位的核心都是具备 精通C/C++ 的技能。

我决定先从c++开发开始学。

作为一个c++开发者,必须具备的技能如下。

我的offer之路(一)-LMLPHP

我求助了本科学长狗哥关于刷题的方法。

开始刷题。

2.刷题。

我刚开始刷题是刷基础小题,没有经验。大概就是把所有面试会考的题库都包括,然后从零开始刷,边刷边做错题记录。后来我发现这种效率很低,没有专项训练,也没有系统地去学每个分支体系,顶多是应试罢了。

然后我放弃了题海战术。

开始看书。

3.看书。

《剑指offer》

第一本书是《剑指offer》,里面有66个题目。书的结构如下。

开始每天下班回来看一个题目。因为很久没编程。所有最开始的几道题我做得非常艰难,阅读解决思路,然后复制答案,就修改了几处就在在线编程中运行测试。实际上还是无法自己写出这样的代码。然后我做到了第七题的时候,我就开始认认真真地分析思路,并在草稿纸上默写出自己的代码,画图分析数据结构。这种方法大大加深了我的印象。我开始自己在在线编程上写代码调试了,测试结果也accept了,当时是非常喜悦的。我开始每天这样,一天做一个题,就很满足了。

知道我看到了算法部分。第11题。已经开始有点看不懂了,因为C++基础并不牢固,我看答案的时候,对于&的含义都模糊不清。而书中并没有详细的说明。可能这些都是基本常识。这时我意识到我该回去好好补补算法基础了。


我求助了本科同学,武大cs专业。他现在已经拿到了offer。

他推荐了两本书,《算法导论》。《深入理解计算机系统》。

我买了 《数据结构算法与应用:C++语言描述》。《深入理解计算机系统》。

第二本真的太难了,我不打算看完,准备作为参考书,工具书。

开始看第一本。


《数据结构算法与应用:C++语言描述 》

这是一本讲算法的书。都是每天下班后晚上看的,所以花了几天才看完了第一章 (c++回顾)。

主要讨论了C++的特性。很粗略。但是给我了一个非常不错的学习C++的框架视图。我认为我有必要更深入去研读C++的原理。尤其是标注成红色的内容。当我终于看懂递归方法的全排列的时候,豁然开朗,算法真的很有趣,数学也很美,尤其是完全理解了解决问题的思路后。当我看到STL时,我依然弄不清楚底层的算法,意识到光是STL就可以让我好好学习很久了。

这个时候我有点不想继续看这本书后面的知识了。因为我觉得我的C++基础知识真的很薄弱。然而我又不想从头开始看那本厚厚的primer,我这时候翻出来我很久之前买的一本《Effective C++》,我的计划是从框架体系入手,也就是从高级开发的角度入手,再去追求细节的完美。过分讲究细节会拖延我的进度。因为我还有很多东西要学。tcpIp网络编程,还有tmp,Linux之类的。这是条不归路哈哈。

开始看《Effective C++》。


《Effective C++》

这是一本超级酷的书。尤其是翻译者。翻译的太好了!

学一个语言的最终目的就是去学会去应用它,而这本书告诉你如何更优质地去使用这门语言。对于一个没有写过自己独立程序的人来说,这本书可以帮助我从一开始就养成好的编程习惯。

对于其中的C的细节,我都会在《C与指针》里面找到解释。

开始看《C与指针》。作为参考。


《C与指针》

这本书既基础又深刻,关键还是97的老书,C99版本之前的。所以有的细节我读的都很费力。

同时这也是这本书的优点,这本书真的太细了!我看了二维数组,讲解的非常细致,好好看,就会理解的很深刻。

但是弄懂细节需要大量的时间。

这是一个时间分配的问题。也许我看多了自然就知道怎么处理了。

4.异步刷题。

后来我无聊的时候,就开始刷C++专项训练的题。只不过现在的刷题不是为了刷题,而是无聊刷题,所以我叫它异步刷题。

比如出去胡吃海喝的时候,我就刷个五题。

拉屎的时候,也来个五题。

刷牙的时候,来个五题。

睡前,再来个五题。

有次做得太兴奋了,搞得失眠了,所以不建议睡前刷。睡就好好睡。

也有段时间,因为想搞懂题目,花了很多精力去查资料。导致进程卡死。但是刷题的目的是为了查漏补缺,不是学习。

5.未来。

总之未来会很忙很忙。

05-14 06:42