Loopless Gray Code Enumeration and the Tower of Bucharest
Abstract
We give new algorithms for generating all n-tuples over an alphabet of m letters, changing only one letter at a time (Gray codes). These algorithms are based on the connection with variations of the Towers of Hanoi game. Our algorithms are loopless, in the sense that the next change can be determined in a constant number of steps, and they can be implemented in hardware. We also give another family of loopless algorithms that is based on the idea of working ahead and saving the work in a buffer.
- Publication:
-
arXiv e-prints
- Pub Date:
- April 2016
- DOI:
- arXiv:
- arXiv:1604.06707
- Bibcode:
- 2016arXiv160406707H
- Keywords:
-
- Computer Science - Discrete Mathematics;
- Computer Science - Data Structures and Algorithms;
- 97R80;
- F.2.2
- E-Print:
- 16 pages plus 8 pages of appendix with Python programs, 6 figures. A Python script to extract the program code from the LaTeX file is attached to the sources