2

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.

3 Answers 3

4

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).

9
  • Thanks... yeah I think I'm out of luck with these searches, because these trees are just called "trees". It looks like the best I can do with Google is just "tree -binary" and cross my fingers that there won't be significant collateral damage.
    – Jason C
    Sep 29, 2016 at 18:56
  • 1
    If you want to confuse people, you can also call it a generalized list :-D Sep 29, 2016 at 19:10
  • 1
    That's the definition of a tree. A tree is an acyclic connected graph. There's nothing special about it and it doesn't say anything more.
    – Paul92
    Sep 29, 2016 at 19:42
  • 1
    -1 because the other answers actually answer the question, unlike this too soon accepted answer.
    – Pieter B
    Sep 29, 2016 at 20:43
  • 1
    And why my answer doesn't actually answer the question? He asks how to call a general tree, I said there is no special name, it is simply a tree.
    – Paul92
    Sep 29, 2016 at 20:46
6

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.

5

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...)

1
  • Great answer. Adding: From what I understand technically a single tree is a connected acyclic graph, to set it apart from a forest.
    – Jason C
    Sep 30, 2016 at 1:47

Your Answer

By clicking “Post Your Answer”, you agree to our terms of service and acknowledge you have read our privacy policy.

Not the answer you're looking for? Browse other questions tagged or ask your own question.