大家都知道,假如有a,b两个整型数,我们可以用
a^=b;
b^=a;
a^=b;
来交换a,b的值,在这里我说说其中的原理:
^ 在 C 里面是按位异或操作符,相同的话异或的结果就是 0,不同的话就是 1。举个例子,比如 a 表示十进制的 5,b 表示十进制的 12,按位异或结果就是:
a = 0101 (5 的二进制表示)
b = 1100 (12 的二进制表...
分类:
其他好文 时间:
2014-09-22 14:10:22
阅读次数:
203
非常有用的位运算技巧
一提起位运算,人们往往想到它的高效性,无论是嵌入式编程还是优化系统的核心代码,适当的运用位运算总是一种迷人的手段,或者当您求职的时候,在代码中写入适当的位运算也会让您的程序增加一丝亮点,最初当我读《编程之美》求“1的数目”时,我才开始觉得位运算是如此之美,后来读到 《Hacker's Delight》,感慨到Henry S.Warren把位运算运用的如此神出鬼没,很...
分类:
其他好文 时间:
2014-09-22 13:53:02
阅读次数:
265
解题思路:
有两种操作,第一种是将区间 a 到 b 染成颜色 c ,第二种是询问区间 a 到 b 内的颜色,按照顺序输出。 注意到颜色只有三十种,因此我们可以用二进制数表示颜色,通过位运算来操作。
#include
#include
#include
#include
#include
#include
#include
#include
#include
#inclu...
分类:
其他好文 时间:
2014-09-21 12:29:00
阅读次数:
325
HDU 5023 A Corrupt Mayor's Performance Art(线段树+优美的位运算)...
分类:
其他好文 时间:
2014-09-20 23:12:59
阅读次数:
310
求一个整数中0或1的位数,有很多方法可以使用除法,求余等方法,也可以使用位运算,相比前者效率更高。#include #include //求一个整数 1的位数int count0(int x){ int num=0; while(x) { num+=x%2; ...
分类:
其他好文 时间:
2014-09-19 17:23:55
阅读次数:
122
原文:C#位运算讲解与示例[转] 在C#中可以对整型运算对象按位进行逻辑运算。按位进行逻辑运算的意义是:依次取被运算对象的每个位,进行逻辑运算,每个位的逻辑运算结果是结果值的每个位。C#支持的位逻辑运算符如表2.9所示。 运算符号 意义 运算对象类型 运算结果类型 对象数 实例 ~ 位逻辑非运算 整...
分类:
其他好文 时间:
2014-09-18 23:35:34
阅读次数:
320
原文地址:http://www.php100.com/html/php/rumen/2014/0326/6704.html
一、PHP的运算符
PHP中有丰富的运算符集,它们中大部分直接来自于C语言。按照不同功能区分,运算符可以分为:算术运算符、字符串运算符、赋值运算符、位运算符、条件运算符,以及逻辑运算符等。当各种运算符在同一个表达式中时,它们的运算是有一定...
分类:
移动开发 时间:
2014-09-18 16:32:54
阅读次数:
239
最近饶有兴致,看了一些java源代码,发现源码里面一些精巧的实现是通过位运算实现的,比如十进制整数转成十六进制形式字符串输出: 1 public static String toHexString(int i) 2 { 3 return toUnsignedString(...
分类:
编程语言 时间:
2014-09-17 18:28:32
阅读次数:
245
刚无意在一篇文章中看到了位运算(&、|)和逻辑运算(&&、||)的介绍,想起了自己薄弱的基础知识,于是百度了几把总结了下。
首先从概念上区分下,位运算是将运算符两边的数字换算成二进制(例:0000010001)后比较相同位置上的0、1进行运算的。逻辑运算即比较运算符两边的逻辑值(true或false)。概念比较抽象,下边借助实际例子比较下。
位运算
先将每个数...
分类:
其他好文 时间:
2014-09-17 10:16:42
阅读次数:
258
自我总结,有什么需要改正弥补的地方,请指出,感激不尽!本次总结了indexof的用法,BigDecimal的乘法、移位运算,Decimal的格式化输出,字符串替换上代码:测试类 Test.javapackage com.core;import java.io.IOException;import j...
分类:
编程语言 时间:
2014-09-16 17:20:50
阅读次数:
203