Advertisement
Not a member of Pastebin yet?
Sign Up,
it unlocks many cool features!
- (define (insert-products products tree)
- (local(
- (define (insert-prod prod _tree)
- (cond [(empty? _tree) (make-product-tree-node empty empty prod)]
- [else (cond
- [(< (product-id prod) (product-id (product-tree-node-prod _tree)))
- (make-product-tree-node (insert-prod prod (product-tree-node-left _tree)) (product-tree-node-right _tree) (product-tree-node-prod _tree))]
- [(> (product-id prod) (product-id (product-tree-node-prod _tree)))
- (make-product-tree-node (product-tree-node-left _tree) (insert-prod prod (product-tree-node-right _tree)) (product-tree-node-prod _tree))]
- [(= (product-id prod) (product-id (product-tree-node-prod _tree))) (insert-products (rest products) tree)]
- )])))
- (cond
- [(empty? products) tree]
- [else (insert-products (rest products) (insert-prod (first products) tree))])))
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement