zoukankan      html  css  js  c++  java
  • Leetcode 89.格雷编码

    格雷编码

    格雷编码是一个二进制数字系统,在该系统中,两个连续的数值仅有一个位数的差异。

    给定一个代表编码总位数的非负整数 n,打印其格雷编码序列。格雷编码序列必须以 0 开头。

    示例 1:

    输入: 2

    输出: [0,1,3,2]

    解释:

    00 - 0

    01 - 1

    11 - 3

    10 - 2

    对于给定的 n,其格雷编码序列并不唯一。

    例如,[0,2,3,1] 也是一个有效的格雷编码序列。

    00 - 0

    10 - 2

    11 - 3

    01 - 1

    这道题感觉是一个找规律的题目,找到规律后就很好求解,感觉不是一道回溯的题。

    对于n=2,它的结果包括n=1时的结果左边补零,以及逆序遍历n=1时的结果左边补1,

    规律如下图,列出了n=1,n=2,n=3时的情况。

    根据这个规律如果已知n=k的情况,那么n=k+1的结果包括对n=k的结果左边补零,即保存不变,然后逆序遍历n=k的结果左边补1即可。

  • 相关阅读:
    实验一 软件开发文档与工具的安装与使用
    ATM管理系统
    举例分析流程图与活动图的区别与联系
    四则运算
    机器学习 实验三
    机器学习 实验四
    机器视觉实验二
    实验三
    实验二
    实验一
  • 原文地址:https://www.cnblogs.com/kexinxin/p/10163070.html
Copyright © 2011-2022 走看看