0
不同的路径,我有以下树:显示在实例
data Questionario = Answer String
| Question String Questionario Questionario
对左了否定的答案,右边一个肯定的回答的子树子树。
我想将Questionario定义为一个实例,显示所有可能的路径。例如:
q = Question "a >= b"
(Question "a >= c"
(Question "b >= c"
(Answer "a b c")
(Answer "a c b"))
(Answer "c a b"))
(Question "a >= c"
(Answer "b a c")
(Question "b >= c"
(Answer "b c a")
(Answer "c b a")))
必须显示为:
*Main> q
a >= b? No a >= c? No b >= c? No ANSWER: a b c
a >= b? No a >= c? No b >= c? Yes ANSWER: a c b
a >= b? No a >= c? Yes ANSWER: c a b
a >= b? Yes a >= c? No ANSWER: b a c
a >= b? Yes a >= c? Yes b >= c? No ANSWER: b c a
a >= b? Yes a >= c? Yes b >= c? Yes ANSWER: c b a
我已经写了这个:
instance Show Questionario where
show (Answer x) = "ANSWER " ++ x
show (Question q r l) = q ++ "? "
,但我不知道如何使它显示出每一个可能的路径。我该怎么做?谢谢。