11 auto nParents = parents.size();
14 for(
auto i = 1u; i < nParents; ++i){
20 for(
auto i = 0u; i < nChildren; ++i){
26 for(
auto i = 0u; i < nParents; ++i){
27 if (i == 0){
continue;}
70 [](
const auto& e) {return e == 0;});
76 std::size_t
depth{0u};
89 for(; i < n; ++i){out << t.parent(i) <<
" ";}
std::ostream & operator<<(std::ostream &out, const Tree &t)
static const Attributes_t empty
std::size_t parent(std::size_t) const
bool is_leaf(size_t) const
std::vector< std::size_t > m_parents
std::vector< std::size_t > siblings(std::size_t) const
std::vector< std::size_t > m_firstGeneration
std::vector< std::vector< std::size_t > > m_children
const std::vector< std::size_t > & leaves() const
const std::vector< std::size_t > & firstGeneration() const
std::vector< std::size_t > m_leaves
std::size_t depth(std::size_t) const
Tree(const std::vector< std::size_t > &)