`
Jack_吴凡
  • 浏览: 10136 次
  • 性别: Icon_minigender_1
  • 来自: 北京
社区版块
存档分类
最新评论

总结一下在不使用第三个变量的情况下,互换两个变量的值的方法

阅读更多

听说面试时候常用,给大家总结一下。

以下方法的根本原理就是:

int a = 3;
int b = 4;
a = a+b; //7
b = a-b; //3
a = a-b; //4


方法1, 运算符:

int a = 3;
int b = 4;
a = a+b; //7
b = a-b; //3
a = a-b; //4


方法2,为运算符:

int a = 3;
int b = 4;
a = a^b;
b = a^b;
a = a^b;


方法3,运算符优先级:

int a = 3;
int b = 4;
a = b+(b=a)*0;


希望对大家有帮助。
0
1
分享到:
评论

相关推荐

    不使用第三个变量进行交换的三种方式以及隐藏隐患

    在不使用第三个变量交换两个变量的值时,常见的方法有三种,分别是利用加法和减法,利用异或运算,以及利用位运算。这三种方法各自有不同的特点和潜在问题,以下是详细的知识点。 ### 1. 利用加减法交换变量 加...

    Java两个变量的互换(不借助第3个变量)具体实现方法

    在Java编程中,有时我们需要交换两个变量的值,但又不希望使用额外的第三个变量来辅助这个过程。这种情况下,可以利用位运算中的异或(XOR)操作符来实现两个变量的互换。本文将详细讲解如何通过异或运算在Java中不...

    Python3之不使用第三方变量,实现交换两个变量的值

    ### Python3之不使用第三方变量实现交换两个变量的值 在编程中,交换两个变量的值是一个常见的操作。通常的做法是引入一个临时变量来完成这一过程。然而,在Python这种动态语言中,我们可以采用更为简洁的方式来...

    PHP互换两个变量值的方法(不用第三变量)

    今天在这里我们就来看看,在PHP中如何在不使用第三变量的情况下,达到交换两个变量值得目的。详细的解说见代码注释,下面来一起看看吧。 一、substr() && strlen() 代码: <?php /** * 双方变量为字符串时,...

    实现两个数互换的六种方法

    目录基本数据类型借助第三个变量不借助第三个变量异或引用数据类型 基本数据类型 借助第三个变量 /** * @author guqueyue * @Date 2020/3/6 * 方法一:实现两个数交换 **/ public class Exchange1 { public ...

    不要采用异或来交换两个变量

    在实际编程实践中,选择哪种方法来交换两个变量的值,取决于具体的应用场景和个人偏好。但从整体角度来看,使用临时变量的方法不仅在性能上不会落后,而且具有更好的可读性和可维护性,因此仍然是首选方案。

    C#不借助第三个变量实现两整数交换

    c#中实现两个int变量的数值互换,在借助第三个变量做临时载体的情况下,非常简单。  int a = 10;  int b = 5;  int c ;  c = a;  a = b;  b = c;  如果不借助第三方变量,有几种实现的方法:  1....

    Java中使用异或语句实现两个变量的互换

    利用这一特性,我们可以巧妙地交换两个变量的值,而无需使用第三个变量。 下面是一个简单的Java代码实例,展示了如何使用异或操作符来交换两个整数变量`A`和`B`: ```java import java.util.Scanner; public ...

    对变量赋值的理解--Pyton中让两个值互换的实现方法

    这种方法虽然不如元组赋值那样简洁高效,但在某些不支持元组赋值的语言或特定场景下仍然非常有用。此外,在教学或解释值交换的过程中,这种方法能够更加直观地展示值是如何一步一步被交换的。 ### 总结 在Python中...

    易语言源码易语言交换变量值源码.rar

    在计算机编程中,交换两个变量的值是一个常见的操作,例如在排序算法或者数据处理中。在易语言中,我们可以使用多种方法来实现这个功能。首先,我们可以使用第三个临时变量作为中介,将其中一个变量的值暂存,然后将...

    c代码-2.功能:不用第三个变量,实现两个数的对调操作。

    总结一下,本文详细介绍了如何在C语言中不使用第三个变量来对调两个数的值,以及这种方法的潜在问题和适用性。通过理解和实践这种技巧,程序员可以进一步提升自己的编程技能,尤其是对于解决限制条件严格的算法问题...

    两数交换的三种方法C#_java 两数交换的三种方法 两数交换方法

    第三种方法利用了位运算中的异或(XOR)操作符,这种方法不仅不使用额外的变量,而且在大多数情况下效率较高。步骤如下: 1. A与B进行异或操作,结果赋给A。 2. B与新的A(原B异或原A的结果)再次进行异或操作,...

    C与C++笔试面试常考终极秘籍

    1. **交换两个变量的值**:不使用第三个变量的情况下,可以通过算术运算或异或操作来实现。例如: - 算术运算:`a = a + b; b = a - b; a = a - b;` - 异或操作:`a = a ^ b; b = a ^ b; a = a ^ b;` 或 `a ^= b ^...

    对变量赋值的理解–Pyton中让两个值互换的实现方法

    #Pyton中让两个值互换的实现方法#方法一:可以理解为相当于是同时赋值a = 5b = 4a,b = b,aprint(a,b)#方法二:可以理解为拿箱子过程c = 10d = 20e = c #定义第三个人e,将箱子 c 给 e 拿着c = d #将箱子 d 给到 cd =...

    C算法,AB交换

    #include #define uchar unsigned char #define uint unsigned int sbit d=P3^0; sbit f=P3^2; sbit g=P3^3;

    kepware关联变量高低顺序问题

    - **字**: 两个相邻的字节组成一个字(16位),例如MB0和MB1组成MW0。 - **双字**: 四个相邻的字节组成一个双字(32位),例如MB0~MB3组成MD0。 ##### 2.2 KEPWARE中的表示方式 KEPWARE作为一款强大的设备通信软件...

    swapping:matlab中两个数的交换-matlab开发

    假设我们有两个变量 `a` 和 `b`,它们分别存储了两个数,我们可以按照以下步骤进行交换: ```matlab a = 5; % 假设 a 的初始值为 5 b = 10; % 假设 b 的初始值为 10 temp = a; % 创建一个临时变量 temp,存储 a 的...

    java中关于变量的练习题及答案

    - **题目描述**: 写出将两个整型变量中的值互换的程序。 - **答案**: ```java int a = 9, b = 5, c = 0; c = a; a = b; b = c; System.out.println("a=" + a); System.out.println("b=" + b); ``` - **解析*...

Global site tag (gtag.js) - Google Analytics