89. Gray Code

Leetcode link

题目简介

/**
 * @param {number} n
 * @return {number[]}
 */

题目给我们一个数字 n

要求我们生成一套 n 位比特的格雷编码

解题思路

Gray code 直接按照算法思路模拟即可

Javascript

/**
 * @param {number} n
 * @return {number[]}
 */
var grayCode = function (n) {
    const res = []
    const total = 1 << n
    for (let i = 0; i < total; i++) {
        res.push(i ^ (i >> 1))
    }
    return res
};

复杂度分析

时间

因为我们需要循环

空间

res 数组需要保存 个元素

results matching ""

    No results matching ""