算法、程序设计的注意事项

一、定义变量,得明确每个变量的意义,在实现程序逻辑时,得维护好变量

二、实现函数,实现某个程序逻辑时,应该想到这个程序的前提条件,例如:检查大小是否越界、递归是否有终点、递归是否有返回

三、处理好边界问题,适当用注释写出来,会方便很多

、循环不变量、在循环的时候、改变变量的值,但是不改变变量的含义

、小数据量的测试,验证程序的正确性,这个小数据量可以包含很多种情形,数据为空,边界等等

六、大数据量的测试,验证程序的鲁棒性

七、看是否可以对特殊的用例进行优化,增加程序的鲁棒性,例如快速排序算法的优化,或者leetcode283的优化,都是考虑到特殊的用例,进行优化

八、递归可能思维更加简洁,但是时间和空间复杂度未必会更高

九、善于添加变量、数组、描述属性,例如:求路径,可以用一个动态数组中的值存储每个节点的上一个节点(a[i] 第i 的节点的路径的上一个节点是a[i]), 往往可以让算法实现变得简单

十、类的属性(数据成员)是这个类的方法需要用到的,如果仅仅是一个方法用到可以定义临时变量,

十一、类的数据成员是引用的话,只能在类的构造函数初始化列表中进行初始化

十二、凡是有变量作为形参从用户函数传入,得考虑变量是否越界,或者处理变量时,也要考虑是否越界

 

發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章