在大量的開發中常常會遇到需要交換兩個數值的問題,今天就給大家分享一些數值交換方面的方法:
第一種方法:
這也是大家最容易想到的方法,即利用中間變數達到交換兩個數的目的,具體如下:
int tmp;
tmp = i1;
i1 = i2;
i2 = tmp;
這種方法執行效率是最低了
第二種方法:
利用數學中的運算技巧:
i1 = i1 + i2;
i2 = i1 - i2;
i1 = i1 - i2;
這樣也可以實現兩個數的交換
第三種方法:
則是利用位運算中的異或來實現資料交換
i1 = i1 ^ i2;
i2 = i1 ^ i2;
i1 = i1 ^ i2;
這種方式的執行效率相對來說比較高。
源**如下:
#include
void swap1(int i1,int i2)
void swap2(int i1,int i2)
void swap3(int i1,int i2)
int main(void)
執行結果:
數值交換的幾種方法
1 最簡單 最標準的一種方法,建立乙個臨時變數 int main 2 在不建立臨時變數的情況下交換兩個數的值 1 通過加減乘除的方法交換數值 define crt secure no warnings 1 include 交換兩個數的內容 int main 由於int定義整型變數,佔四個位元組。它定...
陣列位置交換的幾種方法
1.引入第三個變數 var arr one two var item arr 0 arr 0 arr 1 arr 1 item 2.splice方法,splice 方法會直接對陣列進行修改,splice 方法向 從陣列中新增 刪除專案,然後返回被刪除的專案。arr.splice 1,1,arr 0 ...
交換兩個數的幾種方法
這是最常用的交換兩數的方法 void swap 1 int a,int b 有兩種方法。1 採用加減的方法,這種方法容易越界 void swap 2 int a,int b 2 採用按位異或的方法 void swap 3 int a,int b 這兩種方法並不常用甚至有些時候容易出bug,但有時面試...