自己试着实现一下算法