python位运算纪录
来源:互联网 发布:大数据用什么软件 编辑:程序博客网 时间:2024/06/07 03:16
按位运算就把数字转换为机器语言——二进制的数字来运算的一种运算形式,在计算机系统中,数值一律用补码来表示(存储)。 Python中的按位运算符有:按位与(&),按位或(|),按位异或(^),按位翻转(~)左移运算符(<<),右移运算符(>>)
按位与(&):有0为0,同1为1
按位或(|):有1为1,同0为0;
按位异或(^):相同为0,不同位1;
按位翻转(~):遇1为0,遇0为1
左移运算符(<<):将数字对应的二进制数num左移n位,相当于num*(2**n)
右移运算符(>>):将数字对应的二进制数num右移n位,相当于num/(2**n)
常用的地方:
1、 用于整数的奇偶性判断
一个整数a, a & 1 这个表达式可以用来判断a的奇偶性。
二进制的末位为0表示偶数,最末位为1表示奇数。a & 1 == 0,偶数,反之,奇数 。
2、 判断n是否是2的正整数冪
(!(n&(n-1)) )&& n,TURE为真,反之为假。
3、 统计n中1的个数
4、对于正整数的模运算(注意,负数不能这么算)
5、计算掩码
如一个截取低6位的掩码:0×3F用位运算这么表示:(1<< 6) - 1这样也非常好读取掩码,因为掩码的位数直接体现在表达式里。按位或运算很简单,只要a和b中相应位出现1,那么a|b的结果相应位
也为1。就不多说了。
6、子集
枚举出一个集合的子集。设原集合为mask,则下面的代码就可以列出它的所有子集:
for (i = mask ; i ; i = (i - 1) & mask) ;
0 0
- python位运算纪录
- python 位运算
- Python位运算符
- python 位运算
- Python-位运算符
- 位运算--python
- python的按位运算
- python中的位运算符
- 自学理解Python 位运算
- python: Bitwise Operators (位运算)
- python 学习纪录2
- python mongo 语法纪录
- Python爬虫折腾纪录
- Python语言中的按位运算
- python之位运算,and , or
- python 十进制与二进制以及位运算
- Python中的按位运算符
- Python 位运算及二进制基础知识
- 菜狗的C++ primer读书笔记:第二章 变量和基本类型
- 拓扑结构相同子树练习题
- BZOJ3514: Codechef MARCH14 GERALD07加强版
- css垂直居中的六种方法
- Codeforces 767A Snacktower
- python位运算纪录
- 746B Decoding
- asp.net core mvc剖析:KestrelServer
- 多项式输出
- java中的访问权限的修饰符09
- Java基础学习-----第一章Java语言概述
- 乘车
- caffe源码深入学习3:更底层的数据信息存取与交换代码:syncedmem.hpp和syncedmem.cpp
- java多线程详解三多线程5种实现方式