WIP
This commit is contained in:
parent
8af00ba2d3
commit
be36959f87
4 changed files with 114 additions and 0 deletions
34
rbtree.rkt
Normal file
34
rbtree.rkt
Normal file
|
|
@ -0,0 +1,34 @@
|
|||
#lang racket
|
||||
(define-struct node (value color left right))
|
||||
|
||||
(define (rotate-left node) (make-node
|
||||
(node-value (node-right node))
|
||||
(node-color (node-right))
|
||||
(make-node
|
||||
)
|
||||
(node-right (node-right node))
|
||||
(node-parent node)))
|
||||
|
||||
(define (rotate-left node) (let
|
||||
((a (node-left node))
|
||||
(b node)
|
||||
(c (node-right node))
|
||||
(x (node-left a))
|
||||
(y (node-right a))
|
||||
(z (node-left c))
|
||||
(w (node-right c)))
|
||||
(
|
||||
make-node
|
||||
(value c)
|
||||
(color c)
|
||||
(make-node (value b) (color b) (make-node
|
||||
(value a)
|
||||
(color a)
|
||||
x
|
||||
y
|
||||
|
||||
))
|
||||
|
||||
(define (insert node value) (cond
|
||||
[]
|
||||
[]))
|
||||
Loading…
Add table
Add a link
Reference in a new issue