This solution is based on the contribution
how to get all leaves from a graph :
g = Graph[rules, VertexLabels -> Automatic];
vertices = VertexList[g];
leaves = Select[vertices, VertexOutDegree[g, #] === 0 &]
Using Graph offers the possibility to display the result:
HighlightGraph[g, Subgraph[g, leaves]]