I've decided to write another answer, as the following generalizes the companion matrices featured in my other answer.
De Terán, Dopico, and Mackey, in their paper, show a method to construct a generalized Fiedler companion matrix, which has the Frobenius and Fiedler matrices in my other answer as special cases. Here is a Mathematica implementation of their algorithm:
generalizedFiedler[perm_, poly_, x_] /; PolynomialQ[poly, x] &&
Sort[perm] == Range[Exponent[poly, x]] :=
Module[{n = Exponent[poly, x], coef, diff, idx},
coef = CoefficientList[poly, x]; coef = -Most[coef]/Last[coef];
diff = Sign[Differences[InversePermutation[perm]]];
idx = Thread[If[diff[[1]] > 0, Identity, Reverse]
[{{2, 1}, {1, 1}, {1, 2}}] -> Append[Take[coef, 2], 1]];
Do[idx = If[diff[[k + 1]] > 0,
Join[Thread[{{1, 1}, {1, 2}} -> {coef[[k + 2]], 1}],
MapAt[# + {1, Boole[Last[#] > 1]} &, #, 1] & /@ idx],
Join[Thread[{{1, 1}, {2, 1}} -> {coef[[k + 2]], 1}],
MapAt[# + {Boole[First[#] > 1], 1} &, #, 1] & /@ idx]],
{k, n - 2}];
SparseArray[idx, {n, n}]]
perm can be any permutation of Range[n], where n is the polynomial degree.
Using a cubic polynomial as an example:
MatrixForm[generalizedFiedler[#, z^3 + C[2] z^2 + C[1] z + C[0], z]] & /@
Permutations[Range[3]]
$$\small \left\{\begin{pmatrix}
-c_2 & 1 & 0 \\
-c_1 & 0 & 1 \\
-c_0 & 0 & 0 \\
\end{pmatrix},
\begin{pmatrix}
-c_2 & -c_1 & 1 \\
1 & 0 & 0 \\
0 & -c_0 & 0 \\
\end{pmatrix},
\begin{pmatrix}
-c_2 & 1 & 0 \\
-c_1 & 0 & -c_0 \\
1 & 0 & 0 \\
\end{pmatrix},
\begin{pmatrix}
-c_2 & 1 & 0 \\
-c_1 & 0 & -c_0 \\
1 & 0 & 0 \\
\end{pmatrix},
\begin{pmatrix}
-c_2 & -c_1 & 1 \\
1 & 0 & 0 \\
0 & -c_0 & 0 \\
\end{pmatrix},
\begin{pmatrix}
-c_2 & -c_1 & -c_0 \\
1 & 0 & 0 \\
0 & 1 & 0 \\
\end{pmatrix}
\right\}$$
Note that the first and last entries are Frobenius matrices, while the second and the fourth are the usual Fiedler matrices.
Different permutations can yield the same generalized Fiedler companion matrix. To demonstrate, the following snippet groups permutations of $(1\;2\;3\;4)$ by whether they yield the same companion matrix for a quartic polynomial:
With[{n = 4},
Values[Sort /@ GroupBy[{generalizedFiedler[#, z^n + Sum[C[j] z^j, {j, 0, n - 1}], z],
#} & /@ Permutations[Range[n]], First -> Last]]]
{{{1, 2, 3, 4}},
{{1, 2, 4, 3}, {1, 4, 2, 3}, {4, 1, 2, 3}},
{{1, 3, 2, 4}, {1, 3, 4, 2}, {3, 1, 2, 4}, {3, 1, 4, 2}, {3, 4, 1, 2}},
{{1, 4, 3, 2}, {4, 1, 3, 2}, {4, 3, 1, 2}},
{{2, 1, 3, 4}, {2, 3, 1, 4}, {2, 3, 4, 1}},
{{2, 1, 4, 3}, {2, 4, 1, 3}, {2, 4, 3, 1}, {4, 2, 1, 3}, {4, 2, 3, 1}},
{{3, 2, 1, 4}, {3, 2, 4, 1}, {3, 4, 2, 1}},
{{4, 3, 2, 1}}}
In general, for a degree-$n$ polynomial p[x], we have the identities
frobeniusCompanion[p[x], x] == generalizedFiedler[Range[n, 1, -1], p[x], x]
and
perm = Flatten[If[OddQ[n], Identity, Reverse][GatherBy[Range[n], OddQ]]];
fiedlerCompanion[p[x], x] == generalizedFiedler[perm, p[x], x]