我正在编写一个函数,它接受树t1并返回一个字符串,其中所有数字都存储在t1(preoder横向)中,由空格分隔。
例如:
convertToStr( Node (Node (Node (Empty, 6, Empty), 2, Empty),
5, Node (Empty, 0, Node (Empty, 1, Empty))) )
会给我的
"5 2 6 0 1"
let rec convertToStr t1 =
match t1 with
| Node(E, v, E) -> String(v)
| Node(E, v, w) -> converToStr(w)
| Node(u, v, E) -> convertToStr(u)
| Node(u, v, w) -> String(v) + convertToStr(u) + convertToStr(w)
我仍然没有得到所需的输出。我在打印正确的子树时遇到问题。任何帮助表示赞赏
你的第二和第三个案件无法打印v
。最直接的解决方法是解决这个问题。