【LeetCode力扣】面试题 16.01. 交换数字(Java)

面试题 16.01. 交换数字

题目描述:

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

示例:

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

提示:

  • numbers.length == 2
  • -2147483647 <= numbers[i] <= 2147483647

解题:

class Solution {
    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;
    }
}

思路:

异或运算交换两变量的值。
自己推荐自己_(:з」∠)_: 不使用中间变量交换两变量a、b的值 (Java)

你可能感兴趣的:(LeetCode,java,leetcode,面试)