En algorithmique, un arbre est un type concret utilisé pour représenter un grand nombre de structures de données. Contrairement à la définition d'arbre dans le domaine de la théorie des graphes, en algorithmique, un arbre est pratiquement toujours orienté. On peut définir un tel arbre récursivement comme étant soit vide (représenté par une valeur comme NIL, NULL, ou 0), soit un sommet avec un certain nombre de fils qui sont des arbres.
Souvent, mais pas toujours, le nombre de fils possible d'un sommet est borné. Si la borne est 2, on parle d'un arbre binaire.
Les arbres sont utilisés dans deux situations très différentes :