1. 单元测试;
2. 先写测试用例,再写实现函数;
3. 查看内存,分析调用栈;
4. 阐述问题:为了解决什么问题,做了哪些工作,具体是怎么做的;
5. 边界条件、特殊输入符检测;
6. 有了清晰思路后,再写代码;
7. 画图、举例、分解问题。
Reference:
1) http://wenku.baidu.com/view/84575e1ba76e58fafab003b1.html
2) http://wenku.baidu.com/view/17cf4397daef5ef7ba0d3c45.html