PasteRack.org
Paste # 83866
2018-03-13 15:37:47

Forked from paste # 82025.

Fork as a new paste.

Paste viewed 64 times.


Embed:

visit tree

  1. #lang racket
  2. (define t '(10 (5(4(2 ()()) (26()())) (21(15()()) (23 ()()))) (11(6()())(13()()))))
  3.  
  4. (define (leaf? t) (null? t))
  5. (define (tree-left-branch t) (cadr t))
  6. (define (tree-right-branch t) (caddr t))
  7.  
  8. (define (tree-fn t)
  9.   (display `(visiting ,t))
  10.   (newline)
  11.   (if (leaf? t)
  12.       #f
  13.       (begin (tree-fn (tree-left-branch t))
  14.              (tree-fn (tree-right-branch t)))))
  15.  

=>