今天看了阿里的一道筆試題:
如下函式,在32bit
系統foo(2^31-3)
的值是:
int foo(int x)
a: 0 b: 1 c:2 d:4
也沒想那麼多,覺得需要借助計算機程式設計才能得到答案!
事實上呢,看看下面的程式和結果,你就明白了!
[cpp]view plain
copy
#include
#include
using
namespace std;
int foo(int x)
int main()
明白異或操作的話,這個問題就很簡單了,
異或操作:按位進行異或,對應的位相同,當前位結果為0,不同即為1。
如用4位來表示, 1 1 0 0 與 0 1 1 0進行異或操作,結果將是1 0 1 0,對應的10進製結果就是10.
下面就揭曉上面**的答案吧。
有沒有發現阿里筆試題的答案竟然是2,原因何在??
異或的運算級沒有算術運算級高,先進行了算術運算,再進行的異或操作!
阿里巴巴一道筆試題
其實這是谷歌的一道面試題 給定能隨機生成整數1到5的函式,寫出能隨機生成整數1到7的函式 慚愧,阿里的筆試題做錯了,說實話,以前沒見過,見過了就把搞懂 阿里題目 給定rand 7 表示能生成1 7的隨機數,使用四則運算和迴圈等控制語句,可以輸出的有 rand 3 b.rand 21 c.rand 2...
阿里巴巴的一道筆試題
分布式系統中的rpc請求經常出現亂序的情況。寫乙個演算法來將乙個亂序的序列報序輸出,列如,假設起始序號是1,對於 1,2,5,8,10,4,3,6,9,7 這個序列,輸出是 3,4,5 7,8,9,10 上述例子中,3到來的時候發現4,5已經在了,因此將已經滿足順序的整個序列 3,4,5 輸出為一行...
阿里巴巴筆試題
1 有乙個虛擬儲存系統,若程序在記憶體中佔3頁 開始時記憶體為空 若採用先進先出 fifo 頁面淘汰演算法,當執行如下訪問頁號序列後1,2,3,4,5,1,2,5,1,2,3,4,5,會發生多少缺頁?a 7 b 8 c 9d 10 2 設有乙個順序棧s,元素s1 s2 s3 s4 s5 s6依次進棧...