摘自:https://blog.csdn.net/weixin_41751625/article/details/79764791
展開
今天偶然看到了有一篇文章講解了交換兩個數字的方法,感覺很新穎,拿來說一下。
這種問題通常都是我們在學習java基礎的時候可能就會做一些小練習,相信大多數人都能夠做出來,但是解決問題的辦法多種多樣,如何提高效率,最快才是我們追求的目標 。
第一種 :人盡皆知,就是引入一個中間量。
int c=a; a=b; b=c;
第二種:有個問題就是A+B可能會超過int的范圍,這是這個方法的問題所在。
a=a+b; b=a-b; a=a-b;
第三種:這種方法效率最快,也是最厲害的方法,推薦使用。
a=a^b; b=a^b; a=a^b;
第四種:Python
a,b = b,a