Word to specify that a tree has arbitrary numbers of branches, as opposed to a binary tree

softwareengineering.stackexchange https://softwareengineering.stackexchange.com/questions/332377

  •  29-12-2020
  •  | 
  •  

Pergunta

What do you call a tree where each node has an arbitrary number of children (i.e. not necessarily 2)?

I'm trying to research some algorithms online, and Google keeps returning results for binary trees when I specify just "tree". I'm looking for a word I can add to my search terms to specify arbitrary branch counts.

Foi útil?

Solução

When you say "tree", you refer to any kind of tree. Maybe "ordinary tree" if you want to emphasize over the fact that it can be any tree, but that is not necessary.

Binary tree, ternary tree, tress of a specific height, are all subsets of the set of "trees", that consists of a special kind of graphs (once again, when I said graphs, I am referring to all graphs, I don't need to explicitly say that).

Outras dicas

Binary trees are the most common kind of trees, but ternary trees also pop up sometimes. For generalized trees with (up to) k childs per node, the term k-ary tree (or n-ary tree) is used.

Technically, a Tree is simply an (undirected or directed) acyclic graph.

If the tree has direction, so it is a Directed Tree (directed acyclic graph).

If a tree has a single root, it is a Rooted Tree (see also Poly Tree).

If it has both, it is a Directed Rooted Tree, which,

  • if it all its directed edges lead away from the root, is an Arborescence, or Branching-Tree, or Out-Tree, and,
  • if it all directed edges lead to the root, it is an Anti-Arborescence or In-Tree

So, most of what we deal with in computer science is the Arborescence, or Branching-Tree, or Out-Tree, which allows for any number of children at each branch. (Still, we just call them "trees", so that doesn't help much with your searches...)

Licenciado em: CC-BY-SA com atribuição
scroll top