#yyds干货盘点# 解决名企真题:生成格雷码

网友投稿 844 2022-11-01

#yyds干货盘点# 解决名企真题:生成格雷码

#yyds干货盘点# 解决名企真题:生成格雷码

1.简述:

描述

在一组数的编码中,若任意两个相邻的代码只有一位二进制数不同, 则称这种编码为格雷码(Gray Code),请编写一个函数,使用递归的方法生成N位的格雷码。

给定一个整数n,请返回n位的格雷码,顺序为从0开始。

测试样例:

1

返回:["0","1"]

2.代码实现:

import java.util.*;public class GrayCode { public String[] getGray(int n) { // write code here String[] ans = new String[(int) Math.pow(2, n)]; ans[0] = "0"; ans[1] = "1"; int len = 2, len2 = len + len; for(int i = 1; i < n; i++) { for(int j = len; j < len2; j++) { ans[j] = "1" + ans[len - 1 - j + len]; } for(int j = 0; j < len; j++) { ans[j] = "0" + ans[j]; } len = len2; len2 = len + len; } return ans; }}

版权声明:本文内容由网络用户投稿,版权归原作者所有,本站不拥有其著作权,亦不承担相应法律责任。如果您发现本站中有涉嫌抄袭或描述失实的内容,请联系我们jiasou666@gmail.com 处理,核实后本网站将在24小时内删除侵权内容。

上一篇:SaltStack:自动化的管理和配置任何大规模基础设施或应用程序
下一篇:go-txdb - 基于单一事务的数据库驱动程序主要用于测试目的
相关文章

 发表评论

暂时没有评论,来抢沙发吧~