Subversion Repositories PlanixRsrch.SVN

Compare Revisions

Ignore whitespace Rev 301 → Rev 302

/trunk/libmavl/mav.c
2,15 → 2,29
#include "mavl.h"
 
 
void
recalc(struct mavlnode *n){
n->bal = n->s[ (n->s[0]->bal>n->s[1]->bal) ? 0 : 1 ]->bal+1;
}
 
/* dir = 1 rot left */
static struct mavlnode *
rot(struct mavlnode *n, struct mavlnode **parent, int dir)
{
struct mavlnode *tmp;
*parent = n->s[dir];
n->s[dir]=(*parent)->s[1-dir];
n->s[dir]=n;
recalc(n);
recalc(*parent);
return *parentl;
 
/* struct mavlnode *tmp;
*parent = n->s[dir];
tmp = n->s[dir]->s[1-dir];
n->s[dir]->s[1-dir]=n;
n->s[dir]=tmp;
return NULL;
*/
}