问个面试题有些不明白
发布时间: 2013-08-20 17:47:51 作者: rapoo
问个面试题,有点不明白
把一个unsigned char的数按照各位逆序,生成一个数,用最小的时间复杂度算出,强调算法复杂度最小
------解决方案--------------------
不知可否?
unsigned char getval(unsigned char uc)
{
if(uc==0)return uc;
unsigned char rtn = 0;
for(int i=0;i<8;i++)
{
rtn=((rtn+((uc>>i)&1))<<(i<7?1:0));
}
return rtn;
}