Created
October 25, 2016 22:10
-
-
Save Nosferatu31/f29884cb287b7cd7ee43c30693c7b05d to your computer and use it in GitHub Desktop.
Generic AVL trees module in C (Header)
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
typedef enum balancefactor { LH , EH , RH } BalanceFactor; | |
typedef struct treenode *Tree; | |
Tree createTree(void); | |
void emptyTree(Tree t); | |
int treeHeight(Tree t); | |
int treeSize(Tree t); | |
int isEmpty(Tree t); | |
int compareStrings(void *s1 , void *s2); | |
int searchKey(Tree t, void* e, int (*f)(void* , void*)); | |
Tree insertTree(Tree t, void* e, int *cresceu, int (*f)(void* , void*)); | |
Tree insertRight(Tree t, void* e, int *cresceu, int (*f)(void* , void*)); | |
Tree balanceRight(Tree t); | |
Tree insertLeft(Tree t, void* e, int *cresceu, int (*f)(void* , void*)); | |
Tree balanceLeft(Tree t); | |
Tree rotateLeft(Tree t); | |
Tree rotateRight(Tree t); | |
void TreeToArrayStrings(Tree t, int *pos, int linesize, char** array, char* (*toStr)(void*)); |
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment