相关疑难解决方法(0)

使用此复合形式时,为什么使用XOR交换值失败?

我发现这个代码使用XOR ^运算符交换两个数字而不使用第三个变量.

码:

int i = 25;
int j = 36;
j ^= i;       
i ^= j;
j ^= i;

Console.WriteLine("i:" + i + " j:" + j);

//numbers Swapped correctly
//Output: i:36 j:25
Run Code Online (Sandbox Code Playgroud)

现在我将上面的代码更改为此等效代码.

我的代码:

int i = 25;
int j = 36;

j ^= i ^= j ^= i;   // I have changed to this equivalent (???).

Console.WriteLine("i:" + i + " j:" + j);

//Not Swapped correctly            
//Output: i:36 j:0
Run Code Online (Sandbox Code Playgroud)

现在,我想知道,为什么我的代码输出不正确?

c# swap xor

76
推荐指数
3
解决办法
4716
查看次数

在不使用条件的情况下返回2个可能参数的另一个参数

例如,如果我有一个保证接收5或7作为参数的函数,我希望函数在收到7时返回5,如果收到5则不返回5而不使用任何条件.

我在接受采访时被问到这个问题并且非常难过,谢谢.

java

42
推荐指数
7
解决办法
1694
查看次数

没有第三个变量如何交换?

我必须使用数值交换两个变量而不使用第三个变量.什么是简单的解决方案?

c# variables

8
推荐指数
3
解决办法
2万
查看次数

如何在不使用任何if条件,强制转换或其他变量的情况下交换两个整数变量?

有两个整数变量.您是否可以在不使用任何if条件的情况下交换这些整数变量,而无需转换,也不使用其他变量?例如:

int a = 10;
int b = 5;
Run Code Online (Sandbox Code Playgroud)

a > b总是.答案应该是a == 5b == 10

swap

6
推荐指数
2
解决办法
5414
查看次数

仅使用两个变量交换两个数字

它是如何进行交换的?

A = A + B

B = A + B

A = B +一

我不同意它换成书!

书中的选项包括"a和b的值的互补","否定和b".希望这些选项也不令人满意吗?

algorithm swap

3
推荐指数
2
解决办法
3894
查看次数

交换两个数字而不使用另一个变量

交换两个变量而不使用临时变量if

int a=4; 
int b=3;
Run Code Online (Sandbox Code Playgroud)

我需要交换这些变量并获得输出为a = 3和b = 4而不使用C#中的另一个变量

c#

3
推荐指数
2
解决办法
982
查看次数

交换整数变量而不使用任何赋值

所有!请有人帮我解决这个任务.我需要交换变量值而不使用任何赋值符号.我尝试用while循环来做这件事,但我不能在任何地方存储计数器值.谢谢大家.

.net c# algorithm

1
推荐指数
3
解决办法
3119
查看次数

标签 统计

c# ×4

swap ×3

algorithm ×2

.net ×1

java ×1

variables ×1

xor ×1