add alogrithm
add alogrithm