码迷,mamicode.com
首页 >  
搜索关键字:c语言 交换变量 异或 不创建临时变量    ( 3515个结果
POJ 2155 二维线段树
POJ 2155  二维线段树 思路:二维线段树就是每个节点套一棵线段树的树。 刚开始因为题目是求A[I,J],然后在y查询那直接ans^=Map[i][j]的时候没看懂,后面自己把图画出来了才理解。 因为只有0和1,所以可以用异或来搞,而不需要每次都需要修改。 #include #include #include #include #include #include #include #...
分类:其他好文   时间:2014-08-09 21:32:39    阅读次数:205
谈谈异或加密
本文包括如下几个内容:异或算法;异或加密;两个整数交换问题...
分类:其他好文   时间:2014-08-08 21:21:45    阅读次数:383
opencv---cvor
void cvXor计算两个数组中的每个元素的按位异或。 void cvXor (const CvArr* src1, const CvArr* src2, CvArr* dst, const CvArr* mask = NULL); 得到dst(I) = src1(I)^src2(I)。 你提到的...
分类:其他好文   时间:2014-08-08 15:53:36    阅读次数:254
不用加减乘除做加法
很容易想到为二进制的与或非。 加法分为三步: 1 各位相加不进位 0 + 0 =0, 0+1 = 1,1+0=1,1+1=1,很明显是异或运算 2 进位 1+1 =10进位,其余均不进位 ,进行左移动一位 3 一直循环 代码: #include using namespace std; int sum(int data1,int data2){ int sum,carry; ...
分类:其他好文   时间:2014-08-07 19:02:00    阅读次数:196
使用异或实现两个数的交换
实例:将数组的头尾两端依次对调(采用异或的方法实现两数的交换,不需要临时变量)...
分类:其他好文   时间:2014-08-07 15:44:40    阅读次数:127
一个整型数组里除了两个不同数字之外,其它的数字都出现了两次。请写程序找出这两个只出现一次的数字。
曾经做过一道水题找出除了一个数字之外,其他数字都有2个。直接异或 最后结果就是那个数。 现在变成存在2个不一样的数字,假设成x,y,那么可以O(n)求出x^y,因为x,y不同,所以异或的结果不为0,看成2进制数,那么找到第一位为1 的位置,将这个位置设置为划分点,数组里所有这个位置为1 的异或一次,所有为0的再异或一次,最终求出的两个即为两个独特的数字。 #include #include ...
分类:其他好文   时间:2014-08-07 03:06:48    阅读次数:226
UVA 1566 - John(anti-Nim)
UVA 1566 - John 题目链接 题意:给定n堆糖果,每次取一堆任意个数,取到最后一个的输 思路:anti-Nim,推导出来就是如果全为1,判断1的奇偶,如果不为1,就和Nim问题是一样的,判断异或和 代码: #include #include int t, n; bool solve() { scanf("%d", &n); int ...
分类:其他好文   时间:2014-08-06 14:54:51    阅读次数:394
HDU 4919 Exclusive or
题意: 求题目中的式子 - -b 思路: 推递推公式  比赛时候队友就说数字上有关系  but没推出来 - -b  题解有过程: 推的过程中最巧妙的就是利用异或的性质  相邻两个数字相当于修改二进制最后两位  不过这样做通过异或出来的结果是相同的 题目中数字太大  用java比较好写  处理递推的问题常用记忆化搜索 代码: import java.util.*; import...
分类:其他好文   时间:2014-08-06 11:55:01    阅读次数:268
神奇的位运算
写这篇文章的主要目的就是一个不断积累的过程, 文中提到的方法其实平时很少用到,就当做是知识扩展吧 位运算中常见的一个操作 与& , 或| , 非~  异或 ^    左移位> 定义我就不说了,记录几个用法直接上代码了 1,求两个数的平均值(有效防止溢出的位运算方法) int ave(int a,int b) { reutrn (a&b) + ((a^b)>>1) } 解释下,...
分类:其他好文   时间:2014-08-05 22:32:40    阅读次数:247
关于c语言中的位运算。。。
位运算是一种针对二进制数的一种运算 位运算 共有六种 都有其对应得操作符号 &      (and)      位于 |        (or)         位或 ~      (not)        取反 ^       (xor)        异或 >>    (shr)    右移一位 运算说明: === 1. and...
分类:编程语言   时间:2014-08-04 17:43:38    阅读次数:289
© 2014 mamicode.com 版权所有  联系我们:gaon5@hotmail.com
迷上了代码!