题解 | #生成格雷码#

生成格雷码

https://www.nowcoder.com/practice/50959b5325c94079a391538c04267e15

只需要列举出四位的格雷码就能发现规律;

import java.util.*;

public class GrayCode {
    public String[] getGray(int n) {
        String[] s = new String[(int) Math.pow(2,n)];
        s[0] = "0";
        s[1] = "1";
        if (n == 1) {
            return s;
        }
        List<String> shun = new ArrayList<String>();
        shun.add(s[0]);
        shun.add(s[1]);
        for (int i = 2; i <= n; i++) {
            int mianJi = (int) Math.pow(2,i-1);
            for (int j = 0; j < mianJi; j++) {
                String string = "0" + shun.get(j);
                String stringTwo = "1" + shun.get(j);
                shun.set(j,string);
                shun.add(mianJi,stringTwo);
            }
        }
        for (int k = 0; k < shun.size(); k++) {
            s[k] = shun.get(k);
        }
        return s;
    }
}

全部评论

相关推荐

点赞 评论 收藏
分享
03-06 20:09
贵州大学 Java
King987:你这个学历找个中大厂刷实习经历都是可以的,但是项目要有亮点才行,这个什么外卖就不要做了,去找找最新的项目,至少涉及高并发或者是新型的AI技术mcp rag啥的 ,我在出简历点评,但是你这个没什么好点评的,内容太少,而且含金量太低。自己改一改吧,或者看一下我的项目地址中,那里有大厂最近做过的实习项目
点赞 评论 收藏
分享
评论
点赞
收藏
分享

创作者周榜

更多
牛客网
牛客网在线编程
牛客网题解
牛客企业服务