码迷,mamicode.com
首页 >  
搜索关键字:交换两个数    ( 181个结果
异或交换两个数的陷阱【转】
前面我们谈到了,可用通过异或运算交换两个数,而不需要任何的中间变量。 如下面:void exchange(int&a,int&b){a ^=b;b ^=a;a ^=b;}然而,这里面却存在着一个非常隐蔽的陷阱。通常我们在对数组进行操作的时候,会交换数组中的两个元素,如exchang(&a[i], &...
分类:其他好文   时间:2014-10-26 21:13:00    阅读次数:179
BZOJ 2141 排队 分块+树状数组
题目大意:给定一个序列,m次交换两个数,求初始逆序对数及每次交换后的逆序对数 首先离散化,分块,对于每块建立一个树状数组,保存这个块中的所有元素 然后对于每个询问(x,y) (x a[i] a[i]>a[x] ++ans a[i] a[i]>a[y] --ans 然后对于块中的树状数组处理,块外的暴力 注意此题元素有重复 亲测可信 RANK5吓尿0.0 为何块套树要比树套树还快…...
分类:编程语言   时间:2014-10-22 14:42:48    阅读次数:286
快速排序
#include #include #include using namespace std; /* * 交换两个数 */ void exchange(unsigned int *p,unsigned int *q) { unsigned int temp; temp=*p; *p=*q; *q=temp; } /* * 快速排序 * */ unsigned i...
分类:编程语言   时间:2014-10-15 18:01:26    阅读次数:203
不准引入第三个变量交换两个数的值
int x=1;int y=3;x=x+y;y=x-y;x=x-y;如果int x=1000000;int y=3000000;x=x^y;y=x^y;x=x^y;一个数据异或两次得到数据本身例如5^10^10的值还是5.这个技术还可以用在加密解密里面。
分类:其他好文   时间:2014-09-29 00:07:06    阅读次数:191
不用中间变量交换两个数 swap(a,b);
#include using namespace std;int main () { int a = 3; int b = 5; cout<<"a="<<a<<",b="<<b<<endl; a = a+b; ///a=7 b = a-b; ///b=3; ...
分类:其他好文   时间:2014-09-16 18:45:40    阅读次数:197
BZOJ1119: [POI2009]SLO
1119: [POI2009]SLOTime Limit:30 SecMemory Limit:162 MBSubmit:379Solved:181[Submit][Status]Description对于一个1-N的排列(ai),每次你可以交换两个数ax与ay(xy),代价为W(ax)+W(ay)...
分类:其他好文   时间:2014-09-08 10:42:56    阅读次数:278
20140905
1、定义结构体的这种写法会导致调试时不能监视结构体成员变量 typedef struct listnode { int data; struct listnode *next; }listnode; 两个listnode相同导致上述问题。 2、交换两个数的问题 用位运算和无中间值得方法,若交换的两个...
分类:其他好文   时间:2014-09-05 17:48:41    阅读次数:202
冒泡排序及其优化
1.基本冒泡排序假设有n个数据需要由小到大排序,从最后一个数开始,进行相邻数的两两比较,若上面的数比下面的数大,则交换两个数的位置,则第一趟两两比较过后,n个数中最小的数到达最上面。重新从最后一个数开始,进行相邻数的两两比较,第二趟比较过后,次小的数也到了它应该到的最终位置。一趟比较确定一个位置上的...
分类:其他好文   时间:2014-09-01 19:27:43    阅读次数:211
冒泡排序及其优化
1.基本冒泡排序假设有n个数据需要由小到大排序,从最后一个数开始,进行相邻数的两两比较,若上面的数比下面的数大,则交换两个数的位置,则第一趟两两比较过后,n个数中最小的数到达最上面。重新从最后一个数开始,进行相邻数的两两比较,第二趟比较过后,次小的数也到了它应该到的最终位置。一趟比较确定一个位置上的...
分类:其他好文   时间:2014-09-01 19:16:03    阅读次数:176
今天天气很好,写个快排练练手
最近有些懒,好久没写代码了,现在写个快排练练手吧。public class QucikSort { //此处交换两个数 public static void swap(int a[],int low,int high) { int temp=a[low]; a[low]=a[high]; a[...
分类:其他好文   时间:2014-08-24 20:52:32    阅读次数:179
181条   上一页 1 ... 15 16 17 18 19 下一页
© 2014 mamicode.com 版权所有  联系我们:gaon5@hotmail.com
迷上了代码!