演算法筆試題

2022-03-02 06:17:33 字數 867 閱讀 9970

一 不引入新變數交換兩個變數的值

1  通過加法

不好的地方在於如果a值足夠大,以至於加乙個數就溢位,比如int型在常見的32位或64位機器佔4個位元組,則最大的有符號整數是2^31-1,最小的是-2^31

c++版本:

#include using

namespace

std;

intmain()

python版本:

#

your code goes here

a=5b=8a=a+b

b=a-b

a=a-b

print"a:

",a,"

b:",b

2  通過減法

c++版本:

#include using namespacestd;

intmain()

python版本:

# your code goes here

a=5b=8a=a-b

b=a+b

a=b-aprint "a:",a,"b:",b

3 通過指標位址操作

原理:異或運算的交換律和結合律

c++版本:

#include using namespace std;

int main()

python版本:  

# your code goes here

a=5b=8a=a^b

b=a^b

a=a^b

print "a:",a,"b:",b

alibaba 研發 演算法筆試題1

1 7的二進位制補碼表示為 d a 0111 1000 b 0111 1001 c 1111 1000 d 1111 1001 答 數電題。解析 7的原碼是1 000 0111,反碼是1 111 1000,補碼是1 111 1001,故選d。知識補充 1 乙個數在計算機中的二進位制表示形式,叫做這個...

阿里演算法內推筆試題

include include include include include include include include define pi 3.1415926 define num 10000 using namespace std 請完成下面這個函式,實現題目要求的功能 當然,你也可以不按...

樂視筆試演算法題美團演算法筆試題

今天參加了樂視的校招筆試題有一道以前很熟悉的一道題記錄一下 備註 今天樂視筆試好多圖的選擇題和執行緒間同步的方式一道選擇題 上次總結過 給定乙個無序的整數陣列,怎麼找到第乙個大於 0,並且不在此陣列的整數。比如 1,2,0 返回3 3,4,1,1 返回2 1,5,3,4,2 返回6 100,3,2,...