#!/usr/bin/env python
#coding:utf-8 import sys def gray_code(num, array):
if num < 1:
return
if num == 1:
array.append('0')
array.append('1')
return
gray_code(num-1, array)
times = 2 ** (num-1)
len_ = len(array)
for i in xrange(times):
array.append('1' + array[len_-1-i])
for i in xrange(times):
array[i] = '0' + array[i] if __name__ == "__main__":
if len(sys.argv) != 2:
print "Usage:./gray_code.py number"
sys.exit(1)
number = 0
try:
number = int(sys.argv[1])
except Exception, e:
print e.message
sys.exit(1)
codes = []
gray_code(number, codes)
print codes

最新文章

  1. 使用好压(HaoZip)软件打包EverEdit制作安装程序
  2. [ html canvas globalCompositeOperation ] canvas绘图属性 设置合成图像如何显示 属性演示
  3. java父类转子类的一个方法
  4. 移动设备和SharePoint 2013 - 第1部分:概述
  5. Web.config配置文件
  6. redhat的启动方式和执行次序
  7. 简单实现WPF界面控件换肤效果
  8. centos svn安装
  9. 怎么通过IE连接本机oracle数据库
  10. java常见错误云集与注意事项
  11. msi软件包无法安装
  12. Python标准库内置函数——hasattr
  13. mantis 中文统计报表乱码问题解决办法
  14. 工作需要稍微研究了一下Hyper-V
  15. extjs Proxy
  16. 常用 Linux 命令的基本使用
  17. vue 生产环境 background 背景图不显示原因
  18. 使用python和selenium写一个百度搜索的case
  19. 微信小程序--代码构成---WXSS 样式
  20. npm笔记

热门文章

  1. java8中 map和flatmap的理解
  2. 部署jumpserver
  3. Nginx做反向代理时访问端口被自动去除
  4. antd不可选择时间
  5. 2019hdu多校 K-th Closest Distance
  6. 【Leetcode】二分法
  7. Hive函数介绍
  8. 2-sat问题简记
  9. vue基于element-ui的三级CheckBox复选框
  10. leetcode-mid-dynamic programming-322. Coin Change - NO