  It is known that polar codes can be efficiently constructed for binary-input
channels. At the same time, existing algorithms for general input alphabets are
less practical because of high complexity. We address the construction problem
for the general case, and analyze an algorithm that is based on successive
reduction of the output alphabet size of the subchannels in each recursion
step. For this procedure we estimate the approximation error as
$O(\mu^{-1/(q-1)}),$ where $\mu$ is the "quantization parameter," i.e., the
maximum size of the subchannel output alphabet allowed by the algorithm. The
complexity of the code construction scales as $O(N\mu^4),$ where $N$ is the
length of the code.
  We also show that if the polarizing operation relies on modulo-$q$ addition,
it is possible to merge subsets of output symbols without any loss in
subchannel capacity. Performing this procedure before each approximation step
results in a further speed-up of the code construction, and the resulting codes
have smaller gap to capacity. We show that a similar acceleration can be
attained for polar codes over finite field alphabets.
  Experimentation shows that the suggested construction algorithms can be used
to construct long polar codes for alphabets of size $q=16$ and more with
acceptable loss of the code rate for a variety of polarizing transforms.
