first commit with several algorithm
add some algorithms