Trees have no cycles.
This means no circular dependencies. You can compute values in a single DFS pass. General graphs need different approaches (topological order for DAGs, iterative DP for cyclic graphs). Tree DP is clean: process children, combine, done. No need to worry about visiting the same node twice. The tree structure guarantees a natural ordering where children are processed before parents.