[funds-cvs] r29 - trunk/funds/src/trees
abaine at common-lisp.net
abaine at common-lisp.net
Wed Jun 20 16:37:54 UTC 2007
Author: abaine
Date: Wed Jun 20 12:37:53 2007
New Revision: 29
Modified:
trunk/funds/src/trees/avl-tree.lisp
Log:
Changed left-insert and right-insert to provide for test and order arguments.
Modified: trunk/funds/src/trees/avl-tree.lisp
==============================================================================
--- trunk/funds/src/trees/avl-tree.lisp (original)
+++ trunk/funds/src/trees/avl-tree.lisp Wed Jun 20 12:37:53 2007
@@ -29,14 +29,14 @@
:value value
:left (avl-left tree)
:right (avl-right tree)))
- ((funcall order key (avl-key tree)) (left-insert tree key value))
- (t (right-insert tree key value))))
+ ((funcall order key (avl-key tree)) (left-insert tree key value test order))
+ (t (right-insert tree key value test order))))
-(defun left-insert (tree key value)
+(defun left-insert (tree key value test order)
"The AVL tree that results when the given key-value pair is inserted
into left sub-tree of the given AVL tree. Only non-empty avl-trees
should be supplied as arguments."
- (let ((left (avl-insert (avl-left tree) key value))
+ (let ((left (avl-insert (avl-left tree) key value :test test :order order))
(right (avl-right tree)))
(if (imbalanced left right)
(if (left-heavy left)
@@ -52,11 +52,11 @@
:left left
:right right))))
-(defun right-insert (tree key value)
+(defun right-insert (tree key value test order)
"The AVL tree that results when the given key-value pair is inserted
into the right sub-tree of the given AVL tree. Only non-empty avl-trees
should be supplied as the tree argument."
- (let ((right (avl-insert (avl-right tree) key value))
+ (let ((right (avl-insert (avl-right tree) key value :test test :order order))
(left (avl-left tree)))
(if (imbalanced left right)
(if (right-heavy right)
More information about the Funds-cvs
mailing list