数据与结构练习题

力扣练习题

89格雷编码

在这里插入图片描述

题目分析及c#代码实现

解决这道题主要是能够解决格雷编码的数学逻辑,就是找规律,我查了一下资料,有好几种解释,选了其中按位运算的一种,就是将给定的数从0到这个数(i^(i/2))就可以得到编码。

public class Solution {
    public IList<int> GrayCode(int n) {
        IList<int> ret=new List<int>();
        for(int i=0;i<=Math.Pow(2,n)-1;i++)
        {
            int num;
            num=i^(i/2);
            ret.Add(num);
        }
        return ret;
    }
}

在这里插入图片描述

发布了36 篇原创文章 · 获赞 1 · 访问量 890

猜你喜欢

转载自blog.csdn.net/str_qmk/article/details/105606286