日期:2014-05-20  浏览次数:20682 次

hash一个一位数
传入一个0-9的随机数,哈希出一个0-9的数,即:

int hash(int a){
...
return b;
}

其中a为0-9的随机一位数
要求b为0-9的一位数 ,如何实现,我不懂hash

------解决方案--------------------
你的意思是hash值不能和原来数一样?
Java code

int hash( int a) {
    return a ^ 0x1; // 把a的二进制表示的最后一位取反。 比如 1001 变成 1000, 1000变成1001. 这样结果也不会大于你传进来的数的最大值
}