describe diff algos