互換兩個任意值變數的值,如:
int a=1;
int b=2;
方案一:用變數相加減的方法(面試中使用)
a = a + b;
b = a - b;
a = a - b;
方案二:用變數相加減賦值的方法(面試中使用)
b = (a + b) - (a = b);
方案三:用異或的特點實現(面試中使用)
a = a ^ b;
b = a ^ b;//a ^ b ^ b = a
a = a ^ b;//a ^ b ^ a = b
方案四:使用第三方變數(開發中使用)
int c = a;
a = b;
b = c;
實際上這是一道只能在面試中忽悠人的題目,沒有太多實際意義!首先要強調制數型別必須是整型,而實際開發中幾乎不存在這種想當然的書呆題!更讓人覺得荒謬的是,有些人為了加點神秘色彩還不讓你用第三個變數,而實際開發中很多邏輯卻是借助第三個變數來實現的!
面試題 交換兩個變數的值
面試題 交換兩個變數 也許當你聽到這道題的時候會暗暗的發笑,這麼簡單的演算法題竟然拿出來作為面試題考,是不是也在懷疑這家公司的本身的能力與規模了呢。交換兩個變數 例如num1 5,num2 6 num1 6,num 5 怎麼樣是不是覺得灰常簡單,你是不是用下面的方法做的 int num1 5 int...
js兩個變數互換值
這個問題看似很基礎,但是有很多的實現方式,你知道的有多少呢,網上也有很多的方法,下面就來總結一下 臨時變數其實很好理解,通過乙個中間變數進行交換值 var stra a var strb b var strc 中間變數 開始 strc strb strc值是b strb stra 此時strb已經變...
兩個面試題
1.實現乙個lite版的字串替換函式 c c char strreplace char str,const char sub,const char rep 限制條件和要求如下 1.其中str為原字串,sub為待被替換的子串。為簡單起見,假定字串sub和rep長度一樣 2.直接對原字串str進行修改並...