|
|
ru.algorithms- RU.ALGORITHMS ---------------------------------------------------------------- From : Paul Smirnov 2:5030/611.66 09 Mar 2003 14:30:31 To : Mihail Trischenkov Subject : Re: Особый перебор двоичных значений -------------------------------------------------------------------------------- 08 Мар 31 14:53, Mihail Trischenkov -> All: MT> Слышал про какой-то метод, позволяющий перебирать двоичные комбинации MT> таким образом, что за один прием изменяется только один бит. Hапример, MT> Подскажите, пожалуйста, название метода, в инете пороюсь. Бинарный код Грея. Выглядит похоже на следующее: clear bits; write bits; for i from 1 to 2^n-1 do index = getBitToInvert(i); invert bits[index]; write bits; end for proc getBitToInvert(i) index = 1; while even(i) do i /= 2; index++; end while return index; end proc Приведено по книге Ф.А.Hовикова "Дискретная математика для программистов" с косметическими изменениями. In Bug We Trust, Paul [Team I hate teams] --- Hудист преклонного возраста (3.00.Beta5+ годков) * Origin: There's always one more bug! (2:5030/611.66) Вернуться к списку тем, сортированных по: возрастание даты уменьшение даты тема автор
Архивное /ru.algorithms/170403e6b44cc.html, оценка из 5, голосов 10
|