LeetCode 089 Gray Code
来源:互联网 发布:韩国作曲家甘雨知乎 编辑:程序博客网 时间:2024/05/23 11:32
题目描述
The gray code is a binary numeral system where two successive values differ in only one bit.
Given a non-negative integer n representing the total number of bits in the code, print the sequence of gray code. A gray code sequence must begin with 0.
For example, given n = 2, return [0,1,3,2]. Its gray code sequence is:
00 - 0
01 - 1
11 - 3
10 - 2
Note:
For a given n, a gray code sequence is not uniquely defined.
For example, [0,2,3,1] is also a valid gray code sequence according to the above definition.
分析
将数字i,转换成格雷码的公式是:(i >> 1) ^ i
代码
public static List<Integer> grayCode(int n) { List<Integer> result = new ArrayList<Integer>(); if (n < 0) { return result; } for (int i = 0; i < Math.pow(2, n); i++) { result.add((i >> 1) ^ i); } return result; }
0 0
- LeetCode 089 Gray Code
- LeetCode: Gray Code [089]
- LeetCode 089 Gray Code
- leetcode 089 Gray Code
- 20170323-leetcode-089-Gray Code
- leetcode 089 —— Gray Code
- LeetCode: Gray Code
- [LeetCode] 格雷码(Gray Code)
- LeetCode Gray Code
- [Leetcode] Gray Code
- [LeetCode] Gray Code
- leetcode 112: Gray Code
- LeetCode Gray Code
- [leetCode] Gray Code
- [LeetCode]Gray Code
- Leetcode: Gray Code
- [leetcode]Gray Code
- LeetCode-Gray Code
- 为经典版eclipse增加web and JavaEE插件
- Gson解析原理概述
- 一看就会Android之SQLite中事务的使用
- 浅谈计算机中的存储模型-(虚拟存储)
- Noip2013火柴排队题解
- LeetCode 089 Gray Code
- Makefile
- Libev源码分析02:Libev中的IO监视器
- HIHO Drinking Game
- UML之用例图
- 二叉树中序遍历的三种方法
- 【软考7】算法基础知识
- 栈的基本操作(链表)
- LinuxCNC+EtherCAT(7)一个歪果仁做的例子的解释。。。。。