一、算法
虽然网上流传一句话,面试造火箭,入职拧螺丝。
但毋庸置疑,算法是每个程序员必须掌握的基本功。是能力高低的分水岭,是大厂选拔人才的重要标准。
所以,即使只是为了面试笔试,也需要把算法学好,为大家整理了两份不错的资料,平时多刷刷题为面试笔试做点准备。
LeetCode101题解作者高畅是谷歌无人车部门(Waymo)的工程师。
他在美国卡内基梅隆大学攻读硕士学位时,为了准备实习秋招,他从夏天开始整理某 code 上的题目,几个月的时间,刷了几百道题目。
本书分为算法和数据结构两大部分,又细分了十五个章节,详细讲解了刷题时常用的技巧。而且,在每一章节的末尾,作者都加上了一些推荐的练习题,并给出了一些解法提示,希望读者在理解每一章节后把练习题也完成。
本书以 C++作为编程语言。对于 Java 用户,绝大部分的算法和数据结构都可以找到对应的写法,语法上也只需要小修改。
「超全!」谷歌大神 LeetCode 刷题笔记 PDF 分享,点击下载
50道高频算法题
二、代码规范
对于代码规范,不少朋友自己心中也没有个标准,基本都是怎么喜欢怎么来,但是这样并不是一个好的习惯,心中没有标杆,写出来的代码通常会比较难阅读,难以维护,更有可能出现意外的 BUG。通常在公司开发产品,并不是全部都是一个人完成的(大神另说),一般都是多人协助完成的,每个都负责一个模块,每个人开完自己的负责的模块后,再做代码合并等工作,那么这个时候团队开发中的代码规范就很重要的了。
当然,每个公司都有自己的代码规范,但是我觉得要学习好的代码规范,要向行业顶尖的公司学习,Google 作为技术顶尖公司,它的代码规范自然值得大家学习。
该文档共规定出了 5 种编程语言,C++\Object-C\Python\Shell\Javascript。
C++ 规范
关于 C++的规范,也截取部分出来,整体来看是比较细致,且有实践指导意义,比如对于头文件定义的约束:
所有头文件要能自给自足,用户和重构工具不需要为特别场合而包含额外头文件
Python 规范
下图截取自 Python 编码规范:
Objective-C 规范
Objective-C 部分编码规范:
Shell 规范
shell 部分编码规范:
javascript 规范
javascript 部分编码规范:
如你所见,谷歌的这份编码规范还是非常有参考价值的,分享给需要的同学,助你码到成功!
欢迎一键三连,点赞+收藏+评论分享!
转载:https://blog.csdn.net/weixin_41055260/article/details/116748571