筆試題 如何將兩個變數的值進行互換(三種方法)

2021-09-27 03:07:27 字數 612 閱讀 5447

int a = 1;

int b = 2;

方式一 採用乙個中間變數空間

int c = a;

a = b;

b = c;

好處是比較容易理解 值也不會出問題 不好在於產生乙個新的記憶體空間

方式二

a = a+b;//a空間儲存的是兩個元素之和 a==3 b沒有變化 b==2

b = a-b;//利用兩個元素的和減原來的b剩下是原來的a 賦值給b b==1 a==3

a = a-b;//利用a空間兩個元素的和 減 原來的a 剩下是原來的b 賦值給a a==2 b==1

好處是省略了乙個新的空間 不好在於 第乙個 相對來講不是很容易理解 第二個 可能會在+產生值越界

方式三a = a^b;// 1^2==>001

010011==3^2

010001==>1

1^2^2==>1 乙個數字異或同乙個數字兩次 值不會改變

a==異或中間值 b==2

b = a^b; a==異或中間值 b==1

a = a^b; a==2 b==1

基於threejs如何將兩個模型進行對比?

模型對比是從構件級來比較模型不同版本之間的差異。模型對比功能可以對比兩個不同版本模型之間的差異,這些差異包含構件關係的差異 構件資訊的差異以及模型中構件的增加與刪除等改動。構件資訊的差異是指匹配構件的屬性資訊 基本資訊 幾何資訊的差異 構件關係的差異是指構件父子節點關係的變化,管道系統中連線關係的變...

如何將兩個hex檔案合併

question 由於分散載入檔案設定的原因,工程生成的 hex檔案被分成兩部分,一般情況下使用 flash magic answer 本文只介紹如何將 hex檔案合併的問題 以附件的兩個 hex檔案為例,該程式執行在 easyarm2131 開發板上,通過串列埠向外傳送資料。rom exec1 檔...

面試題 交換兩個變數的值

面試題 交換兩個變數 也許當你聽到這道題的時候會暗暗的發笑,這麼簡單的演算法題竟然拿出來作為面試題考,是不是也在懷疑這家公司的本身的能力與規模了呢。交換兩個變數 例如num1 5,num2 6 num1 6,num 5 怎麼樣是不是覺得灰常簡單,你是不是用下面的方法做的 int num1 5 int...