src/avltree.c
static struct avltree_node *
avltree_node_find_deepest(struct avltree_node *node)
{
    struct avltree_node *parent;

    assert(node != NULL);

    for (;;) {
        parent = node;
        node = node->children[AVLTREE_LEFT];

        if (node == NULL) {
            node = parent->children[AVLTREE_RIGHT];

            if (node == NULL) {
                return parent;
            }
        }
    }
}
/*
 * Return the left-most deepest child node of the given node.
 */
Return the left-most deepest child node of the given node.
Return the left - most deepest child node of the given node .
static struct avltree_node *
avltree_node_find_deepest(struct avltree_node *node)
{
    struct avltree_node *parent;
    assert(node != NULL);
    for (;;) {
        parent = node;
        node = node->children[AVLTREE_LEFT];
        if (node == NULL) {
            node = parent->children[AVLTREE_RIGHT];
            if (node == NULL) {
                return parent;
            }
        }
    }
}
static struct avltree_node * avltree_node_find_deepest ( struct avltree_node * node ) { struct avltree_node * parent ; assert ( node != NULL ) ; for ( ; ; ) { parent = node ; node = node -> children [ AVLTREE_LEFT ] ; if ( node == NULL ) { node = parent -> children [ AVLTREE_RIGHT ] ; if ( node == NULL ) { return parent ; } } } }
Return the left-most deepest child node of the given node.
Return the left - most deepest child node of the given node .