gray码_分治策略_java

原创 2012年03月22日 18:11:05
public class gray{
public void graycode(int n,int b,int arr[][]){
   if(n==0)
    return;

   for(int i=0;i<b/2;i++){
   arr[i][n-1]=0;
   arr[b-i-1][n-1]=1;
}

   graycode(n-1,b/2,arr);

for(int k=b/2;k<b;k++)
   for(int j=0;j<n-1;j++)
    arr[k][j]=arr[b-k-1][j];
   
}

public static void main(String[] args) {
gray g1=new gray();
int arry[][]=new int[16][4];
g1.graycode(4,16, arry);
for(int i=0;i<16;i++){
   for(int j=0;j<4;j++)
    System.out.print(arry[i][j]);
   System.out.print("\n");
}
}

}

运行结果:

0000
1000
1100
0100
0110
1110
1010
0010
0011
1011
1111
0111
0101
1101
1001
0001


构造Gray码的分治算法

#include "iostream" #include "cmath" using namespace std;int arr[1024][1024]; //arr[i][j]表示第i个格雷码的第j...
  • u012319493
  • u012319493
  • 2015年11月15日 20:14
  • 1166

分治法之求解格雷码

分治法求解格雷码 分治法 简介:将一个大的问题分解成为一些较小的子问题,分别求解各个子问题,然后将各个子问题合并就可以得到问题的解。分治法和递归的思想非常类似,分治法一般是划分为若干个相等的子问题...
  • Mr_Peter_Hu
  • Mr_Peter_Hu
  • 2017年03月12日 20:29
  • 682

分治算法对任意的n值构造相应的格雷码

/*格雷码是一个长度为2^n的序列,序列中无相同元素,且每个元素都是长度为n的二进制位串,相邻元素恰好只有1位不同。例如长度为2^3的格雷码为(000,001,011,010,110,111,101,...
  • love3e4520
  • love3e4520
  • 2006年12月20日 13:18
  • 2251

算法学习 - Gray Code(格雷码)的解释和c++实现

Gray Code(格雷码) 典型的二进制格雷码(Binary Gray Code)简称格雷码。当初是为了通信,现在则常用于模拟-数字转换和位置-数字转换中。 特点是:一组数的编码中,若任意两个相...
  • chenfs1992
  • chenfs1992
  • 2014年12月11日 02:23
  • 2778

Gray码

 Gray码是一种数字编码方式,可以使相邻的两个数之间只有一位的差别。构造格雷码的方式很简单,首先列出01以底部为水平轴在轴下方写出轴上方的反射,并在轴上方数字左边都加0,轴下方数字都加1:00011...
  • CherylNatsu
  • CherylNatsu
  • 2011年06月03日 08:47
  • 5118

Gray码的生成算法(直接由二进制数转格雷码)

对于一个n位二进制数,从左往右以此判断每一位和其上一位,若上一位为0,则这一位正常输出;若为1,则这一位取反再输出...
  • jt674106399
  • jt674106399
  • 2015年09月21日 13:04
  • 908

递归——生成格雷码(gray code)

题目描述 在一组数的编码中,若任意两个相邻的代码只有一位二进制数不同, 则称这种编码为格雷码(Gray Code),请编写一个函数,使用递归的方法生成N位的格雷码。 给定一个整数n,请...
  • jingsuwen1
  • jingsuwen1
  • 2016年08月03日 10:56
  • 566

Gray码及其应用

摘要:控制台上有四个开关和一个按钮,每个开关都可以扳到ON和OFF中的一个,只有当四个开关的ON/OFF状态处于某个唯一的正确组合时,按动按钮之后才能打开密室的大门。为了以最快的速度逃脱密室,你打算怎...
  • woddle
  • woddle
  • 2014年03月25日 08:32
  • 509

分治法之Gray问题

i. Gray码问题  « 问题描述 Gray码是一个长度为2n的序列。序列中无相同的元素,每个元素都是长度为n位的串,相邻元素恰好只有一位不同。用分治策略设计一个算法对任意的n构造相应的Gray...
  • fanyuwgy
  • fanyuwgy
  • 2017年07月10日 13:30
  • 261

BD、人脸识别、KATA、Gray码--程序员杂志文摘

Kata(路数练习)的思想就是通过反复练习来实践编码,在不断使用各种技能的过程中形成肌肉记忆。Kata从很多方面改善工作流程,比如编写测试、处理错误甚至编辑器的使用,更熟悉语言技巧。 有人做过一...
  • wishchin
  • wishchin
  • 2013年12月20日 20:09
  • 862
内容举报
返回顶部
收藏助手
不良信息举报
您举报文章:gray码_分治策略_java
举报原因:
原因补充:

(最多只允许输入30个字)