第三题错了 int count(int num) { num = (num & 0x55555555) + ((num >> 1) & 0x55555555); // 相邻两位上的1的和存在这两位上 num = (num & 0x33333333) + ((num >> 2) & 0x33333333); num = (num & 0x0F0F0F0F) + ((num >> 4) & 0x0F0F0F0F); num = (num & 0x00FF00FF) + ((num >> 8) & 0x00FF00FF); num = (num & 0x0000FFFF) + ((num >> 16) & 0x0000FFFF); return num; }
点赞 5

相关推荐

昨天 23:53
已编辑
电子科技大学 Java
阿里控股 后端开发岗 n×16
点赞 评论 收藏
分享
牛客网
牛客企业服务