Main Content

nodedesc

Node descendants

    Description

    nodedesc is a tree-management utility.

    D = nodedesc(T,n) returns the indices of all the descendants of the node n in the tree T.

    example

    D = nodedesc(T,n,"deppos") returns the depths and positions of all the descendants of the node n in the tree T.

    Examples

    collapse all

    Create a binary tree of depth 3.

    t = ntree(2,3);

    Recompose two of the nodes. Plot the tree.

    t = nodejoin(t,5);
    t = nodejoin(t,4);
    fig = plot(t);

    Figure contains an axes object and an object of type uimenu. The axes object with title Tree Decomposition contains 21 objects of type line, text.

    Programmatically, in Node Label, change the selected item from Depth_Position to Index.

    plot(t,"setNodeLabel",fig,"Index")

    Figure contains an axes object and an object of type uimenu. The axes object with title Tree Decomposition contains 21 objects of type line, text.

    Obtain the indices of the descendants of the node whose index is 2.

    nodedesc(t,2)
    ans = 5×1
    
         2
         5
         6
        13
        14
    
    

    Obtain the depths and positions of the descendants of the same node.

    nodedesc(t,2,"deppos")
    ans = 5×2
    
         1     1
         2     2
         2     3
         3     6
         3     7
    
    

    Obtain the depths and positions of the descendants of the node at depth-position (1,0).

    nodedesc(t,[1 0],"deppos")
    ans = 5×2
    
         1     0
         2     0
         2     1
         3     0
         3     1
    
    

    Obtain the indices of the descendants of the same node.

    nodedesc(t,[1 0])
    ans = 5×1
    
         1
         3
         4
         7
         8
    
    

    Input Arguments

    collapse all

    Tree, specified as a dtree, ntree, or wptree object.

    Tree node, specified as a nonnegative integer or a 1-by-2 vector. You can specify the node by either its index or depth and position.

    Data Types: double

    Output Arguments

    collapse all

    Descendants of the node n, returned as a column vector of node indices or a two-column matrix containing the depths and positions of the descendants.

    • If D is a vector, then D(1) is the index of the node n

    • If D is a matrix, the ith row of D contains the depth and position of the ith descendant. The first row of D is the depth and position of the node n.

    Version History

    Introduced before R2006a