作者starsky7372 (點點星空照上風)
看板EE_DSnP
標題Re: 關於 swap
時間Sat Nov 5 14:19:41 2005
真是不直觀的作法阿... XD
同樣都是寫 3 行
那不如 a^=b^=a^=b;
一行解決... XD
而且今天假設 a 跟 b 都是小數時
會不會有 truncation 的問題?
甚至 a 跟 b 不是基本型態而是物件時就沒辦法啦
※ 引述《SingForYou (Dance with me..)》之銘言:
: how about this?
: a=a+b;
: b=a-b;
: a=a-b;
: 這樣就可以把 a 跟 b 互換了 XD
--
. * ‧ . .
.點點星空照上風~
.
* . . ﹢ ·
--
※ 發信站: 批踢踢實業坊(ptt.cc)
◆ From: 140.112.251.56
→ SingForYou:我知道這個,只是不想用 ^= XD 11/05 14:59
推 ric2k1:orz... 11/05 18:23
推 kevinlads:這樣程式是一行沒錯...Operation卻有很多...這樣比較慢 11/05 19:27
推 Eventis:這個作法應該跟加法一樣是4次operation啊@.@? 11/06 13:10
→ Eventis:以x86來說是一次mov,三次xor. 11/06 13:18
→ Eventis:如果是用xchg做swap則是三次. 11/06 13:18