Tree datastructures: Difference between revisions
Content added Content deleted
(Add nest task "hint" and notes) |
m (→{{header|Haskell}}: Tidied one function.) |
||
Line 552: | Line 552: | ||
import Data.Aeson |
import Data.Aeson |
||
import Data.Aeson.Text |
import Data.Aeson.Text |
||
import Control.Arrow ((***)) |
|||
-- TREES <-> LIST OF LEVELS <-> TREES ----------------------- |
-- TREES <-> LIST OF LEVELS <-> TREES ----------------------- |
||
Line 566: | Line 567: | ||
let go [] = [] |
let go [] = [] |
||
go ((n, s):xs) = |
go ((n, s):xs) = |
||
uncurry (:) $ (Node s . go *** go) (span ((n <) . fst) xs) |
|||
in Node s (go firstTreeLines) : go rest |
|||
in go pairs |
in go pairs |
||