What is Parse Tree?

In general, a parse tree (also called a derivation tree or concrete syntax tree) is a hierarchical structure that represents the syntactic structure according to a given grammar.

It can indicate the structure of a sentence, broken down to parts-of-speech in ordered, rooted tree format, and representing real-world constructions like sentences or abstract mathematical expressions.

It is possible to use parse trees for natural language sentences (then the name concrete syntax tree is more common) and programming languages.

A parse tree does not use distinct symbol shapes for different constituents as its basic constructs are phrase structure grammars or dependency grammars. It is composed of nodes and branches where nodes can be parent nodes or child nodes. The main benefit of this concept is that it allows creating multiple passes over the data without re-parse the input.