, , O(f(n)), , O(1). , n , , : . , / / ..
, g, g h ..., h - , ... - . - g, O(f(n)), O(f(n)) * CostH, CostH h ,
, CostH , h: , O(f(n)) . h, , , h , :
foo :: Int -> Tree ()
foo 0 = Tree []
foo m = Tree [t,t] where t = foo (m-1)
, 2^m, m ( ). 3^m b^m b*m .
- . ,
g :: (a -> Int) -> [a] -> Int
, g h [...] h , . , sortBy h [...] h .
, , , . , .