define-type StringTree (U StringNode 'SEmpty))
(define-struct StringNode
([val : String]
[left : StringTree]
[right : StringTree]))
Использование определения выше. Мы должны сделать функцию, которая может создавать структуру данных второй степени и выводить строку, которая является всеми буквами на самой правой стороне структуры.Выполнение строкой из рекурсивной структуры данных
Создание структуры рекурсивной довольно легко:
(: mirror : StringTree -> StringTree)
(define (mirror a)
(match a
['SEmpty 'SEmpty]
[(StringNode val left right)
(StringNode val (mirror left) (mirror right))]))
Но я понятия не имею, как выводить только строки с правой стороны в одну, приложенной строку.