Вход Регистрация
* Manager

Код Грея

  1. class Gray
  2. {
  3.  
  4. /**
  5.   * @param int $n
  6.   * @return int
  7.   */
  8. public static function encode($n)
  9. {
  10. return $n ^ ($n >> 1);
  11. }
  12.  
  13. /**
  14.   * @param int $g
  15.   * @return int
  16.   */
  17. public static function decode($g)
  18. {
  19. $n = 0;
  20. for (; $g; $g >>= 1) {
  21. $n ^= $g;
  22. }
  23. return $n;
  24. }
  25.  
  26. }
  27.  
  28. //Example
  29. $encode = Gray::encode(2016);
  30. echo 'Encode: ' . $encode . '<br>';
  31. echo 'Decode: ' . Gray::decode($encode);
» Описание: В данной статье будет показан математический подход к составлению алгоритмов на примере следующих вопросов и задач:
Двоичные коды Грея.
Их существование.
Перебор подмножеств данного множества в порядке минимального изменения.

Существование и реализация перебора подмножеств из k элементов в порядке минимального изменения.
» Время добавления: 10 Марта 2016 в 15:58
» Посмотров: 1126
» textarea
» Рейтинг: [+0 | -0]
Комментарии [0]
Онлайн: 5
Реклама
Игры между пользователями