Java不使用第三個變數交換兩個變數的資料

2021-08-08 11:05:30 字數 457 閱讀 3356

/**

* 變數:儲存資料的空間

* 資料:文字和符號的表示

* 資料的分類:

* 數字:byte short int long float double

* 非數字:char boolean

* *@author siggy

* */

public

class

vardemo

}

第一種加減法,當a或b為int型別的最大值時會越界,產生bug

第二種異或,簡單高效,計算機本身就是二進位制運算,效率更高

第三種表示式,算是編譯原理的應用,兩個棧,運算元棧和符號棧,然後按順序壓棧,需要注意的一點就是a=b+0*(b=a);第乙個b傳值,壓棧進入是10,然後(b=a)壓棧進入b傳的是b,因為有等號,需要賦值,所以運算之後b=a=20,a等於b壓棧進入的值10

不使用第三個變數交換兩個數值。

上班時間,閒來無事,寫個小演算法消遣下。題目來自某.net面試題集錦。相信很多看官也耳熟能詳。也頗為簡單,不會者學,會者繞道。題目如下 不用第三個變數,交換兩個數值。心得 1.時刻注意現在的i,j是最原始的i,j的什麼組合。2.out 原來必須要初始化才能用地。class program j i,j...

交換兩個變數的值,不使用第三個變數

通常我們的做法是 尤其是在學習階段 定義乙個新的變數,借助它完成交換。如下 int a,b a 10 b 15 int t t a a b b t 這種演算法易於理解,特別適合幫助初學者了解電腦程式的特點,是賦值語句的經典應用。在實際軟體開發當中,此演算法簡單明瞭,不會產生歧義,便於程式設計師之間的...

交換兩個int變數,不使用第三個變數c語言

一般來說交換兩個變數,會用到第三個變數暫存待交換的兩變數中的乙個 常規方法如下 include intmain 得到輸出結果如下 下面介紹另外兩種不需要第三個變數的方法 第一種 先用a存放a與b的和 include intmain 執行後如下 但是這種方法存在溢位的問題,若要解決這個問題,下面給出只...