#!/usr/bin/env python
#coding:utf-8

import sys

def gray_code(n):
    if n < 1:
        return []
    n += 1
    array = ["0", "1"]
    for i in xrange(2, n):
        times = 2 ** (i-1)
        for j in xrange(times):
            array.append("1" + array[times-1-j])
        for j in xrange(times):
            array[j] = "0" + array[j]
    return array

if __name__ == "__main__":
    if len(sys.argv) != 2:
        print "Usage: gray_code_no_rev.py number"
        sys.exit(1)
    number = 0
    try:
        number = int(sys.argv[1])
    except Exception, e:
        print e.message
        sys.exit(1)
    print gray_code(number)

相关文章:

  • 2022-12-23
  • 2022-12-23
  • 2022-12-23
  • 2022-12-23
  • 2021-10-04
  • 2022-12-23
  • 2022-12-23
猜你喜欢
  • 2022-12-23
  • 2022-12-23
  • 2021-12-06
  • 2021-04-18
  • 2021-06-05
相关资源
相似解决方案