登录  
七杀郎君的博客
  个人资料

用户:七杀郎君
网名积分:1500
实名积分:1500
博客等级:0
博客访问:169932
关注粉丝:3
  个人简介
性别:男
生日:保密
棋技:新手
职业:其他
现居:江西
家乡:江西
    眼高手低出错子头昏眼花看错棋慌不择路走险地糊途一时又一时。
  正文
求解:90个数字哈希表与神秘数字 2019-9-15 19:28:00 类别:棋软

unsigned int v;  // 整数
int r;           // 运算结果
static const int MultiplyDeBruijnBitPosition[32] ={
  0, 1, 28, 2, 29, 14, 24, 3, 30, 22, 20, 15, 25, 17, 4, 8,
  31, 27, 13, 23, 21, 19, 16, 7, 26, 12, 18, 6, 11, 5, 10, 9
};
r = MultiplyDeBruijnBitPosition[((uint32_t)((v & -v) * 0x077CB531U)) >> 27];

 

64位的如下: 神秘数字:0x3f79d71b4cb0a89UL
64个数字的哈希表为:
const char g_math_64[] ={0,1,48,2,57,49,28,3,61,58,50,42,38,29,17,4,62,55,59,36,53,51,
43,22,45,39,33,30,24,18,12,5,63,47,56,27,60,41,37,16,54,35,52,21,44,32,23,11,46,26,40,
15,34,20,31,10,25,14,19,9,13,8,7,6};
求log2的算法:
#define LOG2_64(v) g_math_64[(uint64_t)((v) * 0x3f79d71b4cb0a89UL) >> 58]

 

 

求解:

90位神秘数字是多少?

90个数字哈希表是。。。。。?


阅读(245) | 评论(0) | 转载(0) | 举报
评论
暂无评论
我要评论:

匿名评论  


大师网博客 | 注册须知
电话:13603119508  电子邮箱:zgxqds@126.com    © 2006,版权所有(象棋大师网)    冀ICP备06022471