home *** CD-ROM | disk | FTP | other *** search
- typedef struct _leaf
- {
- struct _leaf *left ; /* pointer to left subtree */
- struct _leaf *right ; /* pointer to right subtree */
- unsigned size : 14 ; /* size of user area */
- unsigned bal : 2 ; /* balance factor (L,R,B) */
- }
- HEADER;
-
- #define L 0 /* Left subtree is larger */
- #define B 1 /* Subtree is balanced */
- #define R 2 /* Right subtree is larger */
-
- int delete ( HEADER**, HEADER*, int(*)() );
- HEADER *insert ( HEADER**, HEADER*, int(*)() );
- HEADER *find ( HEADER* , HEADER*, int(*)() );
- void tprint ( HEADER* , int(*)(), FILE* );
- HEADER *talloc ( int );
- void tfree ( HEADER* );