面试题 16.01. 交换数字

题目

编写一个函数,不用临时变量,直接交换numbers = [a, b]ab的值。

示例1:

1
2
输入: numbers = [1,2]
输出: [2,1]

提示:

numbers.length == 2

解法

解法一:

使用位运算符

JAVA

1
2
3
4
5
6
public int[] swapNumbers(int[] numbers) {
numbers[0] = numbers[0] ^ numbers[1];
numbers[1] = numbers[0] ^ numbers[1];
numbers[0] = numbers[0] ^ numbers[1];
return numbers;
}
0%