相关疑难解决方法(0)

在Haskell中为左关联树实现`read`

我很难为树结构实现Read.我想要一个左关联字符串(与parens)喜欢ABC(DE)F并将其转换为树.该特定示例对应于树

树.

这是我正在使用的数据类型(虽然我愿意接受建议):

data Tree = Branch Tree Tree | Leaf Char deriving (Eq)
Run Code Online (Sandbox Code Playgroud)

那个特定的树将在Haskell中:

example = Branch (Branch (Branch (Branch (Leaf 'A')
                                         (Leaf 'B'))
                                 (Leaf 'C'))
                         (Branch (Leaf 'D')
                                 (Leaf 'E')))
                 (Leaf 'F')
Run Code Online (Sandbox Code Playgroud)

我的show功能如下:

instance Show Tree where
    show (Branch l r@(Branch _ _)) = show l ++ "(" ++ show r ++ ")"
    show (Branch l r) = show l ++ show r
    show (Leaf x) = [x]
Run Code Online (Sandbox Code Playgroud)

我想做一个read功能

read …
Run Code Online (Sandbox Code Playgroud)

haskell

8
推荐指数
2
解决办法
915
查看次数

标签 统计

haskell ×1