现在我有树数据类型:
data TernaryTree a = EmptyTree
| Node a (TernaryTree a) (TernaryTree a) (TernaryTree a)
deriving (Show)
Run Code Online (Sandbox Code Playgroud)
我正在尝试创建一个可以在三元树中循环一个值的函数.树没有排序.
treeLook :: (Ord a)=> a -> TernaryTree a -> Bool
treeLook x EmptyTree = False
treeLook x (Node a left mid right) =
if x /= a
then do
treeLook x left
treeLook x mid
treeLook x right
else
True
Run Code Online (Sandbox Code Playgroud)
我现在有这个,但我无法编译它.它说:
Couldn't match expected type "m0 b0" with actual type "bool" on the line:
treeLook x right
Run Code Online (Sandbox Code Playgroud)