首页 > 其他 > 详细

#Leet Code# Gray Code

时间:2014-08-11 20:38:52      阅读:305      评论:0      收藏:0      [点我收藏+]

描述:

要求相邻数2进制差一位

先获得n-1的列表表示小于 2^(n-1) 的符合要求的列表,加上最高位的加成 2^(n-1) 就是大于等于 2^(n-1) 的符合要求的列表,后者翻转一下就能够与前者连接上了

代码:

 1 class Solution:
 2     # @return a list of integers
 3     def grayCode(self, n):
 4         if n == 0: return [0]
 5 
 6         s1 = self.grayCode(n - 1)
 7         s2 = [item + 2 ** (n - 1) for item in s1[::-1]]
 8         s1.extend(s2)
 9 
10         return s1

 

#Leet Code# Gray Code,布布扣,bubuko.com

#Leet Code# Gray Code

原文:http://www.cnblogs.com/mess4u/p/3905285.html

(0)
(0)
   
举报
评论 一句话评论(0
关于我们 - 联系我们 - 留言反馈 - 联系我们:wmxa8@hotmail.com
© 2014 bubuko.com 版权所有
打开技术之扣,分享程序人生!