異或交換兩個數的值
異或交換兩個數的值是資源開銷最小的方法,不需要中介數,原理簡單的來說就是異或的負負得正。
程式碼:
#include <stdio.h>
int main()
{
int a = 11, b = 22;
printf("a=%d b=%d\n", a, b);
a = a ^ b;
b = a ^ b;
a = a ^ b;
printf("a=%d b=%d\n", a, b);
}
編譯:
gcc test.c -o test
執行:
a=11 b=22
a=22 b=11
相關文章
- 異或運算的巧用 → 不用額外的變數,如何交換兩個變數的值?變數
- Swift交換兩個變數的值Swift變數
- mysql交換兩行或兩列的值MySql
- 不使用臨時變數交換兩個變數的值變數
- 交換兩個變數變數
- 交換兩個整型變數變數
- 如何不使用臨時變數,交換兩個變數的值。變數
- JavaScript實現兩個數的交換JavaScript
- 【C語言】給定兩個整型變數的值,將兩個值的內容進行交換C語言變數
- Python面試技巧-交換兩個元素的值Python面試
- C語言交換兩個變數的值的5種基本方法C語言變數
- 不用第三個變數,交換變數的值變數
- C++ 一種交換兩個數的思路C++
- 呼叫函式實現兩個數交換函式
- 面試題-JavaScript交換兩個變數的方法面試題JavaScript變數
- C++取反交換兩個數的值C++
- 數值變數交換常用方法變數
- Python常用的四種數值交換方式!Python
- c語言 - 交換兩個變數(不建立臨時變數)兩種方法C語言變數
- 交換兩個資料的三種方法
- 交換2個整形數引發的思考
- vue兩個元件間值的傳遞或修改方式Vue元件
- 從JVM底層原理分析數值交換那些事JVM
- 【Python有坑系列】交換兩個陣列的切片,有坑Python陣列
- Java交換map的key和value值Java
- leetcode 24 兩兩交換連結串列中的節點LeetCode
- 數倉的兩種輕量級資料交換格式:json與jsonbJSON
- 變更性別--使用if 交換值
- leetcode 24.兩兩交換連結串列中的節點LeetCode
- LeetCode 24. 兩兩交換連結串列中的節點LeetCode
- 24. 兩兩交換連結串列中的節點 (中等)
- java基礎變數的交換Java變數
- 三種交換變數的方法變數
- 線上json差異比較工具--遞迴比較兩個json的節點和值的差異,並支援差異數預覽和逐個檢視差異JSON遞迴
- 透過交換指標變數的值改變大小數字的位置-學習筆記指標變數筆記
- 編寫js比較兩個數的最大值(使用者依次輸入兩個數,最後彈出最大的那個值)JS
- Matlab 隨機生成兩個數值之間的隨機數Matlab隨機
- 尋找陣列中和為定值的兩個數陣列