做题感悟日记201904

啥20190314

快速做出原型,再优化。

20190401

构造散列函数,再构造查询表。递归问题,满足马尔科夫性质,即当前问题的求解与上个问题无关。即子问题的求解与母问题无关

20190402

递归是一种遍历的方法。在遍历的基础上,做优化如贪心。

递归 可针对 排列组合问题。在此 根据具体题目硬性要求 加上回溯法,可减少 遍历量 进而减少计算量。

20190403

贪心法 基本题:性价比优先法。

20190410

  • 禁忌:不要陷入语言的奇巧淫技中而沾沾自喜。语言知识工具,关键是要解决问题。

真正的编程能力其实并不是对语法细节的理解,也不在于手写或者复制粘贴,更不在于对什么操作系统的使用,或者常用库的api的记忆。
而是找出解决方法的能力,把现实问题转换为代码逻辑的能力。这个是最重要的。语法很好学,只要看一看,再不行网上搜一搜都有,但是解决问题的能力,在网上搜不到,找不来,谁也帮不了。只能在长期的分析问题解决问题的过程中得到。
在工作中,见过太多面试的时候打高分,把什么const char*, char const*, char*const i+++++i 这种奇技淫巧玩的烂熟,解决问题的时候一筹莫展的。只能你清晰明了的告诉他流程他才能实现。这样的人,要是不思进取,沉浸在这种很多公司禁用的语法技巧里沾沾自喜,可能永远只能是个代码流水线工人。
也有很多人面试的时候各种语法都模棱两可,提起做过的项目和程序,却能够条理清楚,头头是道。给他一个问题,他几分钟就给出还不错的解决方案。这样的人,随便什么语言,什么语法,什么库,对他来说都是工具。他知道与否,都能最终解决问题。
其实不管是复制黏贴也好,自己手写也好,关键的是解决问题。编程最终还是个生产工具,目的是解决问题,不能解决问题的,一切都是空中楼阁,毫无价值。


作者:黑毛大猪蹄子
链接:https://www.zhihu.com/question/31034164/answer/74716106
来源:知乎
著作权归作者所有。商业转载请联系作者获得授权,非商业转载请注明出处。

对于现代的高级语言,代码细节对性能的优化已经非常有限,反而是对架构的选择理解应用更加重要。
除非是做嵌入式,用c,不然像java,c#,python,学起来都非常快,做起事情都主要是看你对所用到的库的了解。这些东西其实花不了多少时间。
其实掌握了操作系统,数据结构以后,学一门高级语言根本不是什么难事。一个项目多种语言配合也很常见。所以只会一门语言是不够的。
当你掌握了解决问题的能力,任何一种语言,都只是工具而已。

  • 操作系统知识
  • 锐捷还不错,进去学习网络知识,linux知识,操作系统。现在加强 数据结构与算法。
  • 同意,这个道理和acm一样,你能把各种模板在赛场上整合发挥出来也很厉害了,这其实对于基础要非常扎实
  • 有些东西只能穷举,有些可以发掘数学规律

20190412

题目的程序的最终版本,基础题目 最好做成函数的形式,方便以后的调用。跟搭积木一样。

20190413

先专注于编程,数据结构,先别玩数学。专题训练,有针对性的训练 比较好。

20190423-计算机知识架构

我还是比较想打好基础的。数据结构,计算机组成原理,计算机网络原理,操作系统。

  1. 计算机组成原理还好,因为嵌入式学多了,和微机原理差不多。
  2. 操作系统 基础概念还是有的,主要是进程那些,Linux实操还是要加强一下,也不一定Linux ,win系统也可以加强下进程线程的知识,这些大概就够了,偏概念。
  3. 数据结构。我正在刷题中,也还好。主要还是实操,概念 大概都懂,因为看过大话数据结构,还有公开课那些。数据结构的基础我差不多快搞定了。
  4. 计算机网络知识。应该算我的知识盲区吧,毕竟我只上过一次课,对于通信还是有一点概念。锐捷比较需要这个基础吧。
  5. 编译原理懂得基本的知识吧。
  6. 其实我对数据处理分析,机器学习挺感兴趣的,但是总觉得自己的编码能力还不够,确实应该加强一下。多做做题真的很重要,锻炼自己的基本的编程能力,要足够到方便自己想法的施展,这很重要
  7. 数据库原理。会基本的选择就差不多了吧。数据库有点逗的感觉。。。因为陈康的原因吧。
  8. 图像处理。学习opencv就够了,懂得基本的流程。图像特征选择,图像分类,利用一些几何特征(圆和圆心,直线等)来定位物体。

20190423

看了好久的知乎,总结:转行计算机 和 不读博

  1. 一方面,觉得搞控制相关其实很烦的,做实践的话我经验不足,做理论的话就是心术不正。总结一下还是 转行!我搞嵌入式的时候,其实就是迷恋于 计算机组成原理,痴迷于单片机为什么能够运作,程序如何编译,软件影响硬件的具体流程。编译工具->->->
  2. 读博还是很辛苦,可怕。
  3. 我还是比较传统的。我的学习路线,肯定打基础,数据结构,加强自己的开发经验!一年后转行 图像处理,或机器学习。

20190426

马尔科夫的思想是一个伟大的思想,简化方便了我们的思考方式,面对多阶段决策这种复杂问题。使得当前的决策仅与当前系统的状态有关,不用管 之前决策行动,使得时间维度 得到压缩。

 

 

 

 

 

 

 

 

 

 

你可能感兴趣的:(codeup)