Pannda 20 Fund 06/11/2010 Update (附截图)# Stock
x*j
1 楼
gray code, 判断2个byte是否有一位不同。有个测试用例没通过就提交了, 因为自己太
笨,想了半天也没想明白。 想问问为什么没通过。
public static boolean isgray(byte b1, byte b2){
int n1=(int)b1;
int n2=(int)b2;
int xor=n1^n2;
int num=0;
while(xor>0){
if(xor%2==1) num++;
xor=xor/2;
}
if(num==1) return true;
return false;
}
笨,想了半天也没想明白。 想问问为什么没通过。
public static boolean isgray(byte b1, byte b2){
int n1=(int)b1;
int n2=(int)b2;
int xor=n1^n2;
int num=0;
while(xor>0){
if(xor%2==1) num++;
xor=xor/2;
}
if(num==1) return true;
return false;
}