在我們寫程序的時(shí)候,經(jīng)常會(huì)遇到兩個(gè)變量A與B交換的操作,通常大家會(huì)借助第三個(gè)變量來實(shí)現(xiàn):
如:C=A;A=B;B=C;
這種方法需要借助第三變量來實(shí)現(xiàn);
第二種方法是利用加減法實(shí)現(xiàn)兩個(gè)變量的交換,
如:A=A+B;B=A-B;A=A-B;
第三種方法是得用位異或運(yùn)算來實(shí)現(xiàn),也是效率最高的一種,在大量數(shù)據(jù)交換的時(shí)候,效率明顯優(yōu)于前兩種方法,
如:A=A^B;B=A^B;A=A^B;
原理:利用一個(gè)數(shù)異或本身等于0和異或運(yùn)算符合交換率。
希望對大家有幫助!
posted on 2008-01-29 13:01 々上善若水々 閱讀(7961) 評論(1) 編輯 收藏 所屬分類: J2SE
Powered by: BlogJava Copyright © 々上善若水々