317
правок
Изменения
м
→Алгоритм построения
Существует несколько видов Кода Грея, самый простой из них {{---}} так называемый зеркальный двоичный Код Грея. Строится он так:
Для получения кода длины <tex>n</tex> производится <tex>n</tex> шагов. На первом шаге код имеет длину <tex>1</tex> и состоит из двух векторов (<tex>0</tex>) и (<tex>1</tex>). На каждом следующем шаге в конец списка заносятся все уже имеющиеся вектора в обратном порядке, и затем к первой половине получившихся векторов дописывается "<tex>0</tex>", а ко второй "<tex>1</tex>". С каждым шагом длина векторов увеличивается на <tex>1</tex>, а их количество {{---}} вдвое.
Таким образом, количество векторов длины <tex>n</tex> равно <tex>2^n.</tex>
{| border="0"
|align="left" colspan="4"|
<tex>GrayCode </tex> {{---}} двумерный массив, в котором <tex>GrayCode[a, b] </tex> {{---}} <tex>b</tex>-ый бит в <tex>a</tex>-ом коде Грея.
<font size=3>
buildCode(n):