LeetCode Gray Code(回溯法)

问题:gray code是一种二进制数字系统,两个连续的数只有一位不同。给出一个正整数n,n表示gray code的位数,输出gray code.

思路:使用回溯法。通过枚举0,1,2,3的gray code,可以发现规律

n=0时,gray code为0

n=1时,gray code为: [0,1]

n=2时,gray code为:[00, 01, 11, 10]

n=3时,gray code为:[000, 001, 011, 010, 110, 111, 101, 100]

可以发现n=3的gray code为n=2时的gray code与n=2时的gray code结果倒序中的每个元素最左边添加1后组成的集合。

具体代码参考:

https://github.com/wuli2496/OJ/tree/master/LeetCode/Gray%20Code

发布了1365 篇原创文章 · 获赞 71 · 访问量 140万+

猜你喜欢

转载自blog.csdn.net/wuli2496/article/details/104527261