2016.4.18
开这样一个blog的目的,是把它当做一个记录本,记录CS学习过程中的点滴,方便自己查看。而且记录的过程也是加深理解的过程,为了对自己和看者的负责,每个代码都是亲自敲的,尽量注释详细,保证程序的正确性(目前的水平只能保证正确性--)。虽然blog的内容对大多数人来讲都很简单,但是如果能帮助到别人真的是很开心的。
LZ研二,本科和研究生都是非CS专业。本科时候觉悟太低,没有学习太多东西。研究生画过板子调过电路,调试过图像,设计过光路,做的东西不是很难却很杂很繁琐,研究生大家都是这么苦过来的,没有什么抱怨的。
LZ研一时候受到良友的启蒙,开始入门技术(有点后知后觉),开始看一些技术方面的书。从MSP430的流水灯开始(感觉真的好弱哈),FPGA。Java,Python。Linux,uc/os等都有看过相关书。但是因为做的项目和这些没有多少关系,很多看过就忘了。研究生做了一段时间硬件后,虽然完成了任务,但是感觉自己兴趣不大。大概四月初的时候,参加了华为的机试,虽然只作对一道题,但是发现自己还是更喜欢编程。今年暑假开始面临找工作了,LZ思考了一下自己,不适合做非技术岗。技术岗的话,硬件和软件,基础都一般。加上四月初赶参展的样机,因为焊接问题,熬了好几个晚上,感觉自己对硬件的兴趣不大。LZ下决心要转软件,但是基础只有C语言(自己想想是很天真啊,但是管它呢,人生如果没有梦想,和咸鱼有什么区别)。大概四月份的时候开始看书,因为实验室还有事情要做,时间不会很多。
四月初先把C语言和C++过了一遍,语言基础很重要。推荐两门课,北大的《计算概率》和《程序设计实习》的课件和视频。尤其是《计算概率》的李戈老师,把基础知识讲得很透彻,让我理解了很多以前的盲区。《程序设计实习》,看课件,不理解的地方看下视频。感觉这个过程很享受啊!
期间刷了牛客网,lintcode上的简单题。
目前在复习数据结构,看的是《大话数据结构》,这本书适合初学者,但是错误真的有点多,而且有时候一个代码看起来比较简单,随便过了,但是自己得思考一下,这个递归的过程是怎样的?这个structure为什么这么设计?因为之前没有系统学过数据结构,只知道数组、链表、队列,所以就先看了这本书。感觉学习数据结构的过程很享受,有相见恨晚的感觉。不要求快,基础很重要,一个盲点就可能会导致后面的不太好理解。
数据结构的基础知识都能理解,代码实现起来有时候不是那么容易,书上解释不会很多,而且不能直接运行。我会举个例子,把书上的算法搬进来测试一下,代码的注释都是自己的理解,坚持下来很有收获。
----------------------------------------------------------------------------------------------------------------------------------------------------------------