一些自己整理的算法