交換變數的三種方式

2021-09-27 04:32:34 字數 778 閱讀 9162

1、借助中間量交換 (開發常用)

int x = 10; 

int y = 20; 

int temp = x; 

x = y; 

y = temp;

此種方法可以將中間量看成空杯,即把temp看成是空杯, 

把x看成是裝有白酒的杯子,把y看成是裝有紅酒的杯子

int temp = x; 把白酒倒到空杯中,此時temp裝有白酒,x變成空杯 

x = y; 把y中的紅酒倒到x空杯中,此時x裝有紅酒,y變成空杯 

y = temp; 把白酒倒到y空杯中,此時x裝有紅酒,y裝有白酒,實現x和y的互換

2、位移運算交換 (面試常用)

int x = 10; 

int y = 20; 

x = x ^ y; 

y = x ^ y; 

x = x ^ y;

此種方法運用這種原理:乙個數對另乙個數字異或兩次,該數不變

x = x ^ y;  此時x的值為x ^ y;

y = x ^ y;  此時的x經上面的運算變成x ^ y,所以y =  x ^ y ^ y = x;

x = x ^ y;  此時的y經上面的運算變成 x,所以x =  x ^ y ^ x = y; 實現兩個數的互換

3、數值相加減交換

int x = 10; 

int y = 20; 

x = x + y; 

y = x - y; 

x = x - y;

此種方法通過先求得兩數的和再進行減運算

交換倆種變數的三種方式

public class exchange 因為main方法是個static方法所以設計的方法也要用static修飾 private static void changevariable01 int a,int b private static void changevariable02 int a...

交換機的三種交換方式

1.直通式 cut through 直通方式的乙太網交換機可以理解為在各埠間是縱橫交叉的線路矩陣 交換機。它在輸入埠檢測到乙個資料報時,檢查該包的包頭,獲取包的目的位址,啟動內部的動態查詢表轉換成相應的輸出埠,在輸入與輸出交叉處接通,把資料報直通到相應的埠,實現交換功能。由於不需要儲存,延遲非常小 ...

完成兩個變數交換的三種方式

1.利用第三個變數交換數值,簡單的方法。int x 5,y 10 定義兩個變數 int temp x 定義第三臨時變數temp並提取x值 x y 把y的值賦給x y temp 然後把臨時變數temp值賦給y2.可以用兩個數求和然後相減的方式進行資料交換,弊端在於如果 x 和 y 的數值過大的話,超出...