This commit is contained in:
joachimschmidt557 2019-09-08 19:13:33 +02:00
parent be36959f87
commit 7391f2ffeb

10
bst.rkt
View file

@ -3,8 +3,8 @@
(define-struct node (value left right))
(define (search node value) (cond
[(= (node-value node) value) #t]
[(empty? node) #f]
[(= (node-value node) value) node]
[(empty? node) empty]
[(> (node-value node) value) (search (node-left node) value)]
[else (search (node-right node) value)]
))
@ -51,3 +51,9 @@
[(< 1 (abs (- (height (node-left node)) (height (node-right node))))) -1]
[else (+ 1 (max (height (node-left node)) (height (node-right node))))]
))
(define (delete node)
(cond
[(empty? node) empty]
[(empty? (node-left node)) (node-right node)]
[(empty? (node-right node)) (node-left node)]))