Consider the following C program segment struct CellNode { struct CellNode…

GATE · 2004 · CS

Consider the following C program segment

struct CellNode
{
    struct CellNode *leftChild;
    int element;
    struct CellNode *rightChild;
};

int DoSomething(struct CellNode *ptr)
{
    int value = 0;
    if (ptr != NULL)
    {
        if (ptr->leftChild != NULL)
            value = 1 + DoSomething(ptr->leftChild);
        if (ptr->rightChild != NULL)
            value = max(value, 1 + DoSomething(ptr->rightChild));
    }
    return value;
}

The value returned by the function DoSomething when a pointer to the root of a non-empty tree is passed as argument is

  1. A.

    The number of leaf nodes in the tree

  2. B.

    The number of nodes in the tree

  3. C.

    The number of internal nodes in the tree

  4. D.

    The height of the tree

Attempted by 458 students.

Show answer

Correct answer: D

The worked solution is available to enrolled students.

Video solution available to enrolled students.

Explore the full course: Iocl Engineers Officers Grade A Paper 2

Loading lesson…