算法基本实现