libGimbal 0.1.0
C17-Based Extended Standard Library and Cross-Language Runtime Framework
|
#include <gimbal_nary_tree.h>
Data Fields | |
struct GblNaryTreeNode * | pParent |
struct GblNaryTreeNode * | pChildFirst |
struct GblNaryTreeNode * | pSiblingNext |
Represents a single intrusive node within an N-Ary tree structure.
GblNaryTreeNode is a single node which is to be embedded within another structure, providing heirarchial relationships between its instances. As relationships are established between these instances, they become nodes comprising an aggregate tree structure.
A single node contains only a pointer to its parent node plus a linked list of its child nodes, resulting in a minimal memory footprint. The API attempts to present psuedo list-style semantics for accessing ancestors, bases, siblings, and children by index; however, these are linked structures and such operations are of O(N) time complexity, requiring traversals for random access.
Definition at line 55 of file gimbal_nary_tree.h.
struct GblNaryTreeNode* GblNaryTreeNode::pParent |
Node's parent.
Definition at line 56 of file gimbal_nary_tree.h.
struct GblNaryTreeNode* GblNaryTreeNode::pChildFirst |
Node's first child (beginning of child linked list)
Definition at line 57 of file gimbal_nary_tree.h.
struct GblNaryTreeNode* GblNaryTreeNode::pSiblingNext |
Node's next sibling (next entry of child linked list)
Definition at line 58 of file gimbal_nary_tree.h.