Update 2: Arrows between nodes with nodewalk specification
All additional arrows (not built natively by forest) that connect two nodes are placed in the tree with the short node walk syntax. This without naming the nodes as before (a real style exercise).
In order to allow the visualization of these arrows, I colored them in red.
I quote the manual:
A nodewalk is a concise way of expressing node relations. It is simply
a string of steps, which are represented by single characters, where:
u stands for the parent node (up); p for the previous sibling; n for the next sibling; s for the sibling (useful only in binary trees); 1, 2, . . . 9 for first, second, . . .
ninth child; l, for the last child, etc. For the complete
specification, see section 3.8.7.

\documentclass[border=5mm]{standalone}
\usepackage{forest}
\usetikzlibrary{arrows.meta}
\useforestlibrary{linguistics}
\begin{document}
\begin{forest}
% Styling
for tree={
align=center,
parent anchor=south,
child anchor=north,
edge={thick, -{Stealth[]}},
l sep+=10pt,
edge path={\noexpand\path [draw, \forestoption{edge}] (!u.parent anchor) -- +(0,-10pt) -| (.child anchor)\forestoption{edge label};
},
if level=0{inner xsep=-15pt,tikz={\draw [thick] (.south east) -- (.south west);}
}{}
}
%
[Alphabet
[a
[b]
[c,s sep=10,
[f,s sep=30,
[,phantom]
[z,edge={white}]
{\draw[thick,red,-{Stealth[]}] (!rllN.south east) -- +(0,-10pt) -| (!c); %<-- arrow from g to z
\draw[thick,red] (!uss.south west) -- +(0,-10pt) -| (!c) ;%<-- arrow from f to z
}
]{\draw[thick,red,shorten >=3pt] (!us.south) -- +(0,-10pt) -| (!c) ;}%<-- arrow from b to f
[,phantom]
]
]
[b
[d]
[e,s sep=9
[g]{\draw[thick,red,shorten >=3pt] (!us.south) -- +(0,-10pt) -| (!c) ;}%<-- arrow from d to g
[,phantom]
]
]
]
\end{forest}
\end{document}
In response to an update
I've done a lot of tinkering to achieve this result and so I'm not sure I coded elegantly. If a forest expert comes by, I'm listening to what improvements can be made.

\documentclass[border=5mm]{standalone}
\usepackage{forest}
\usetikzlibrary{arrows.meta}
\useforestlibrary{linguistics}
\begin{document}
\begin{forest}
% Styling
for tree={
align=center,
parent anchor=south,
child anchor=north,
edge={thick, -{Stealth[]}},
l sep+=10pt,
edge path={\noexpand\path [draw, \forestoption{edge}] (!u.parent anchor) -- +(0,-10pt) -| (.child anchor)\forestoption{edge label};
},
if level=0{inner xsep=-15pt,tikz={\draw [thick] (.south east) -- (.south west);}
}{}
}
%
[Alphabet
[a
[b,name=b]
[c,s sep=10,
[f,name=f,s sep=30,
[,phantom]
[z,name=z,edge={white}]
]
[,phantom]
]
]
[b
[d,name=d]
[e,s sep=9
[g,name=g]
[,phantom]
]
]
]
\draw[thick,shorten >=2pt] (b.south) -- +(0,-10pt) -| (f.north);
\draw[thick,shorten >=2pt] (d.south) -- +(0,-10pt) -| (g.north);
\draw[thick,shorten >=2pt] (g.south east) -- +(0,-10pt) -| (z.north);
\draw[thick,-{Stealth[]}] (f.south west) -- +(0,-10pt) -| (z.north);
\end{forest}
\end{document}
Old answer
There may be a more elegant solution, but here is my proposal.

\documentclass[border=5mm]{standalone}
\usepackage{forest}
\usetikzlibrary{arrows.meta}
\useforestlibrary{linguistics}
%\usepackage{fullpage}
%\usepackage[utf8]{inputenc}
%\usepackage{tikz}
%\usetikzlibrary{arrows,shapes,positioning,shadows,trees}
%\usepackage{mdframed}
%\usepackage{boxedminipage}
\begin{document}
\begin{forest}
% Styling
for tree={
align=center,
parent anchor=south,
child anchor=north,
edge={thick, -{Stealth[]}},
l sep+=10pt,
edge path={\noexpand\path [draw, \forestoption{edge}] (!u.parent anchor) -- +(0,-10pt) -| (.child anchor)\forestoption{edge label};
},
if level=0{inner xsep=-15pt,tikz={\draw [thick] (.south east) -- (.south west);}
}{}
}
%
[Alphabet
[a
[b,name=b]
[c,name=c
[,phantom]
[z,name=z]
]
]
[b
[d,name=d]
[e,name=e]
]
]
\draw[thick,shorten >=2pt] (b.south) -- +(0,-10pt) -| (z.north);
\draw[thick,shorten >=2pt] (d.south) -- +(0,-10pt) -| (z.north);
\draw[thick,shorten >=2pt] (e.south) -- +(0,-10pt) -| (z.north);
\end{forest}
\end{document}
Forestis possible, but it does involve learning syntax specific toForest. It might be better to adopt thematrix of nodesapproach and learn basicTikZsyntax that can then be extended to many other applications. – Ross Aug 16 '20 at 03:33