LINUX.ORG.RU

Зверски тупая реализация: 

----- 

binsearch n [] = False 
binsearch n [x] = x == n 
binsearch n xs = if (xs !! l1) > n then (binsearch n l) else (binsearch n r)
    where 
      (l,r) = splitAt (l1) xs
      l1 = (length xs) `div` 2

-----

> quickCheck (\xs n -> binsearch n (sort xs) == (n `elem` xs))
OK, passed 100 tests.

pierre
()
Вы не можете добавлять комментарии в эту тему. Тема перемещена в архив.