Wolfram Language

Álgebra y teoría de números

Reversión de números enteros

La permutación de reversión de dígitos, y en particular la permutación de reversión de bits, es una técnica de reordenamiento utilizada en algunos algoritmos rápidos de transformada de Fourier.

Defina una función que genere la permutación de reversión de grado .

In[1]:=
Click for copyable input
reversalperm[k_, b_] := IntegerReverse[Range[0, b^k - 1], b, k] + 1;

Genere la permutación de reversión de bits para listas de longitudes .

In[2]:=
Click for copyable input
Table[reversalperm[k, 2], {k, 0, 5}]
Out[2]=

Genere la permutación de reversión de dígitos base 3 para listas de 9 elementos.

In[3]:=
Click for copyable input
reversalperm[2, 3]
Out[3]=

Represente esos cambios.

In[4]:=
Click for copyable input
segment[{p1_, p2_}] := {PointSize[Large], Point[{p1, p2}], Line[{p1, p2}], Text[Last[p1], p1 - {1/2, 0}], Text[Last[p2], p2 + {1/2, 0}]};
In[5]:=
Click for copyable input
With[{k = 2, b = 3}, Graphics[ segment /@ Thread[{Thread[{0, Range[b^k]}], Thread[{b^k, reversalperm[k, b]}]}] ]]
Out[5]=

Ejemplos relacionados

de en fr ja ko pt-br ru zh