i solved
$\displaystyle \left( \begin {array}{cccc|c}
3 & 6 & -3 & 0 & 18 \\
3 & 6 & -3 & 2 & 0 \\
0 & 1 & -8 & 3 & 7 \\
3 & 7 & -11 & 3 & 25
\end {array} \right)$
subtract first row from 2nd and 4th rows then swap 2nd and 3rd rows and divide first row by 3
$\displaystyle \left( \begin {array}{cccc|c}
1 & 2 & -1 & 0 & 6 \\
0 & 1 & -8 & 3 & 7 \\
0 & 0 & 0 & 2 & -18 \\
0 & 1 & -8 & 3 & 7
\end {array} \right)
$
subtract double 2nd row from first row and subtract 2nd row from 4th row and divide 3rd row by 2
$\displaystyle \left( \begin {array}{cccc|c}
1 & 0 & 15 & -6 & -12 \\
0 & 1 & -8 & 3 & 7 \\
0 & 0 & 0 & 1 & -9 \\
0 & 0 & 0 & 0 & 0
\end {array} \right)
$
add 6 times 3rd row to first row and subtract 3 times 3rd row to 2nd row.
$\displaystyle \left( \begin {array}{cccc|c}
1 & 0 & 15 & 0 & -66 \\
0 & 1 & -8 & 0 & 34 \\
0 & 0 & 0 & 1 & -9 \\
0 & 0 & 0 & 0 & 0
\end {array} \right)
$
I'm not really sure where your algorithms could be going wrong. I just do these from left to right, getting 0s in all but one row and a one in the non-zero row then moving to the next column.