Logo

Programming-Idioms

This language bar is your friend. Select your favorite languages!
  • C++

Idiom #17 Create a Tree data structure

The structure must be recursive. A node may have zero or more children. A node has access to its children nodes, but not to its parent.

#include <vector>
template<typename T>
struct Node{
  T value;
  std::vector<Node<T>> children;
};
typedef struct node_s
{
    int value;
    struct node_s *nextSibling;
    struct node_s *firstChild;
} node_t;

New implementation...