看了wys的论文,感觉获得了不少新姿势

这里总结一下

#include <iostream>
using namespace std;
typedef unsigned int u32;inline u32 read_bit(u32 x, int pos){return (x >> pos)&1;
}
inline u32 set_bit(u32 x, int pos){return x | (1u << pos);
}
inline u32 clear_bit(u32 x, int pos){return x & ~(1u << pos);
}int cnt_table[1 << 16];
void count_pre(){cnt_table[0] = 0;for(int i = 0; i < 1<<16; i++){cnt_table[i] = cnt_table[i >> 1] + (i & 1);}
}
inline int count(u32 x){return cnt_table[x >> 16] + cnt_table[x & 65535u];
}inline int count_trailing_zeros(u32 x){int ret = 0;if(!(x & 65535u)) x >>= 16, ret |= 16;if(!(x & 255u)) x >>= 8, ret |= 8;if(!(x & 15u)) x >>= 4, ret |= 4;if(!(x & 3u)) x >>= 2, ret |= 2;if(!(x & 1u)) x >>= 1, ret |= 1;return ret + !x;
}int clz_table[1 << 16];
void clz_pre(){clz_table[0] = 16;for(int i = 1; i < 1 << 16; i++){clz_table[i] = clz_table[i >> 1] - 1;}
}inline int count_learding_zero(u32 x){return x >> 16 ? clz_table[x >> 16] : 16 + clz_table[x & 65535u];
}inline u32 lowbit(u32 x){return x & -x;
}//ö¾Ù×Ó¼¯
void subS(int S){for(int i = S; i; i = (i-1)&S){//do_something(i);
    }
}int main() { return 0; }

转载于:https://www.cnblogs.com/Saurus/p/6536361.html

常见的位运算技巧总结(膜wys)相关推荐

  1. 漫画:位运算技巧整理汇总+一道被嫌弃的题目

    (这首歌挺喜欢的...分享出来) 今天是小浩算法"365刷题计划"第65天.这两天总有人来问我,做公众号赚了多少钱,或者就是怎么能和你一样,2个月就做到7000粉丝.说实话,至少到 ...

  2. python写整数逆位运算_简单了解python的一些位运算技巧

    前言 位运算的性能大家想必是清楚的,效率绝对高.相信爱好源码的同学,在学习阅读源码的过程中会发现不少源码使用了位运算.但是为啥在实际编程过程中应用少呢?想必最大的原因,是较为难懂.不过,在面试的过程中 ...

  3. Java位运算,常见的位运算

    前提 位运算符中 ,操作数只能为整型和字符型数据 运算符号 按位与(&):同1则1 → true&&true 操作数1 0 0 1 1 操作数2 0 1 0 1 按位与 0 0 ...

  4. 使用位运算技巧比较两个数中较大的数

    使用位运算技巧比较两个数中较大的数 作者:Grey 原文地址: 博客园:使用位运算技巧比较两个数中较大的数 CSDN:使用位运算技巧比较两个数中较大的数 题目要求 如何不要用任何比较判断符(>, ...

  5. 你可能不知道的位运算技巧

    作者 | bigsai  责编 | 张文 头图 | CSDN 下载自视觉中国 位运算隐藏在编程语言的角落中,其神秘而又强大,暗藏内力,有些人光听位运算的大名的心中忐忑,还有些人更是一看到位运算就远远离 ...

  6. 《位运算技巧以及Leetcode的一些位运算题目》

    目录 技巧 练习位运算 [461. 汉明距离](https://leetcode-cn.com/problems/hamming-distance/) [190. 颠倒二进制位](https://le ...

  7. 漫画:位运算技巧助你俘获offer

    今天是小浩算法"365刷题计划"第61天.继续分享一道和位运算有关的题型,同样在难度上属于简单.建议先看一下昨天的题目,因为同样的技巧,也可以使用在本题中. 漫画:三分钟学习一道位 ...

  8. NKU两题简单题解析(递归分析与位运算技巧)

    题目:http://acm.nankai.edu.cn/p1002.html 题意:对给定的f(n),当 n>=50025002 的时候,f(n)=n-5:当 n<50025002 的时候 ...

  9. 位运算简介及实用技巧(一):基础篇

    去年年底写的关于位运算的日志是这个Blog里少数大受欢迎的文章之一,很多人都希望我能不断完善那篇文章.后来我看到了不少其它的资料,学习到了更多关于位运算的知识,有了重新整理位运算技巧的想法.从今天起我 ...

  10. 位运算的一些技巧总结

    位运算 这里主要总结一些位运算的基础用法,不从位运算的运算过程展开了: 1.&(and)运算 &运算通常用于二进制取位操作,例如一个数 & 1的结果就是取二进制的最末位. 基础 ...

最新文章

  1. 【专访】KDD2018主席熊辉教授:数据挖掘与深度学习结合新趋势
  2. java 模拟实现mq,RabbitMQ的5种模式,并使用java进行模拟操作
  3. 使用SSH上传部署WAR包到服务器
  4. 【学习笔记】之多项式使人头秃
  5. CM005-逆向分析过程(上篇)
  6. Ubuntu 安装和修改Apache2端口
  7. mysql使用数据库_MySQL数据库的常用操作
  8. 利用Eclipse的Update组件实现适合企业应用的更新组件(1)
  9. 典型案例:Bug 9776608-多个用户使用错误密码登录同一个用户而造成的用户无法登录异常...
  10. 在ubuntu 16.04中安装source insight 4.0破解版
  11. 连接远程hbase长时间等待问题
  12. pcs7组态虚拟机中的服务器,pcs7组态虚拟机中的服务器(ECS700无法连接到组态服务器)...
  13. 063.django之模板层
  14. 服务器主板双cpu性能好吗,双CPU的电脑用起来,性能和功耗都是原来的两倍?
  15. android仿小米日历,实现一个仿小米日历控件
  16. 常见混沌系统—Chen模型
  17. 实战 | 一键导出微信阅读记录和笔记
  18. 简单工厂和工厂方法模式的区别和个人看法
  19. JAVA 与 JVM
  20. MobileNetV3 实战:植物幼苗分类(pytorch)

热门文章

  1. Nvidia显卡驱动升级
  2. 在Microsoft Windows XP中使用NetMeeting
  3. usb加密狗破解软件
  4. NSAT-3030 数字万用表自动计量系统
  5. 解决IDEA支持GBK编码项目的问题
  6. 《MBA一日读2.0 读书笔记》
  7. 将已经汉化了的Protel 99 SE整回英文原版
  8. 虚拟光驱下载安装和使用,Windows系统如何直接打开iso文件
  9. 支付宝免签在线支付要饭教程
  10. dnSpy反编译C#编译以后dll文件并调试