# Tips for Avoiding Bugs

## 边界条件

循环时的起始和终止，比如数组、矩阵、链表中，注意何时开始循环，又是何时终止循环。

Tips: 用实际例子，模拟过程，确定边界处理的方式，再通过特殊的输入条件验证这种处理方式是否通行。

## 特殊输入

一些算法在特殊输入情况下会出问题。

比如null，length = 0，invalid输入，重复元素。

## 贪心算法的普适性

贪心算法往往得到的是局部最优local optimal，如何扩展到全局最优，很多时候需要更严谨的证明。
