PAVL Data Types - GNU libavl 2.0.3
Author: Ben Pfaff

14.1 Data Types |

A PAVL tree node has a parent pointer and an AVL balance field in addition to the usual members needed for any binary search tree:

    523. <PAVL node structure 523> =
    /* An PAVL tree node. */
    struct pavl_node
      {
        struct pavl_node *pavl_link[2]; /* Subtrees. */
        struct pavl_node *pavl_parent;  /* Parent node. */
        void *pavl_data;                /* Pointer to data. */
        signed char pavl_balance;       /* Balance factor. */
      };

This code is included in 521.

The other data structures are the same as the corresponding ones for TBSTs.