这是一个树的代码.
import Control.Exception
import Control.Monad
import Control.DeepSeq
import qualified Data.List as List
import Test.HUnit
data Tree a = Empty
| Node a (Tree a) (Tree a)
deriving (Show, Eq)
insertTree :: ( Ord a, Show a ) => Tree a -> a -> Tree a
insertTree Empty x = Node x Empty Empty
insertTree ( Node v tLeft tRight ) x
| x == v = Node v tLeft tRight
| x < v = Node v (insertTree tLeft x) …Run Code Online (Sandbox Code Playgroud)