检查两个字节是否对称
check if two bytes are symmetric
我听说这是一个采访中问到的问题,给定两个字节,return如果它们是对称的则为真
public boolean isSym(Byte firstByte, Byte secondByte);
01101000 和 00010110 是对称的,
但 01100000 和 11000000 不是。
需要在Java中编写代码。
有什么想法最好吗?
public boolean isSym(Byte firstByte, Byte secondByte)
{
for (int i = 0; i< 8 ; i++){
if (bitAt(firstByte, i) != bitAt(secondByte, 7 - i))
return false;
}
return true;
}
public byte bitAt(byte num, int position)
{
return (byte)((num >> position) & (byte)1);
}
我听说这是一个采访中问到的问题,给定两个字节,return如果它们是对称的则为真
public boolean isSym(Byte firstByte, Byte secondByte);
01101000 和 00010110 是对称的, 但 01100000 和 11000000 不是。 需要在Java中编写代码。 有什么想法最好吗?
public boolean isSym(Byte firstByte, Byte secondByte)
{
for (int i = 0; i< 8 ; i++){
if (bitAt(firstByte, i) != bitAt(secondByte, 7 - i))
return false;
}
return true;
}
public byte bitAt(byte num, int position)
{
return (byte)((num >> position) & (byte)1);
}