[guided]The goal of this step is to show that the adjacent swaps are enough to perform an arbitrary swap. Let $i,j \in \{1,\dots,n\}$ with $i<j$. We define the permutation
\begin{align*}
w := s_i s_{i+1}\cdots s_{j-2}s_{j-1}s_{j-2}\cdots s_{i+1}s_i.
\end{align*}
This element lies in $H$ because $H$ is a subgroup containing each generator $s_k$, and therefore contains every finite product of the $s_k$.
We now compute the action of $w$ point by point, remembering that the rightmost factor acts first. Starting with $i$, the rightmost factor $s_i$ sends $i$ to $i+1$, then $s_{i+1}$ sends $i+1$ to $i+2$, and this continues until $s_{j-1}$ sends $j-1$ to $j$. The factors after $s_{j-1}$ are $s_{j-2},\dots,s_i$, none of which moves $j$. Hence
\begin{align*}
w(i)=j.
\end{align*}
Now start with $j$. The factors $s_i,\dots,s_{j-2}$ on the far right do not move $j$. The factor $s_{j-1}$ sends $j$ to $j-1$, then $s_{j-2}$ sends $j-1$ to $j-2$, and this continues until $s_i$ sends $i+1$ to $i$. Thus
\begin{align*}
w(j)=i.
\end{align*}
It remains to check that no other point is moved. If $m<i$ or $m>j$, then every adjacent transposition appearing in $w$ swaps two elements inside $\{i,\dots,j\}$, so $m$ is fixed by each factor and therefore by $w$. If $i<m<j$, then the right-hand part of the word moves $m$ one step down to $m-1$, while the left-hand part moves it back one step up to $m$. Thus
\begin{align*}
w(m)=m
\end{align*}
for every $m \notin \{i,j\}$. Therefore $w$ is exactly the transposition $(i\ j)$. Since $i$ and $j$ were arbitrary with $i<j$, every transposition in $S_n$ belongs to $H$.[/guided]