- 不用定义变量来交换两个数的值
int temp = a;
a = b;
b = temp;
可以替换成:
a = a ^ b;
b = a ^ b;
a = a ^ b;
- 使用>>替换原来的/2取中点
int mid = (left + right) / 2;
int mid = left + ((right - left) >> 1); /
int temp = a;
a = b;
b = temp;
可以替换成:
a = a ^ b;
b = a ^ b;
a = a ^ b;
int mid = (left + right) / 2;
int mid = left + ((right - left) >> 1); /