some algorithm programs