一、問答題
01
機器人每次向前走1步概率是1/2,每次向前走2步概率是1/2,當機器人走的路程是4的整數(shù)倍時候結(jié)束,求結(jié)束時機器人步數(shù)的期望
02
7635412,做堆排序升序,第一輪后的結(jié)果
03
老公接老婆下班,老公6:20—6:30到,老婆6:25—6:30下辦公樓,如果老公到老婆辦公樓下比老婆晚,就會挨打,求老公挨打概率。
04
二進制數(shù)0.0011001100110011最接近的10進制數(shù)
05
中國打算30年后成為發(fā)達國家,生產(chǎn)力翻番,問每年的生產(chǎn)力增長率至少為多少?
06
進程和線程區(qū)別
07
擲篩子拿獎金,兩次機會,擲得是幾,就拿幾的獎金,比如擲3,則拿3元。第一次擲結(jié)束后可以選擇拿獎金離開,也可以選擇再擲一次,如果再擲一次,則只能拿第二次獲得的獎金,求期望
08
write pwrite seek fseek 哪個和其他的不同 一個是系統(tǒng)調(diào)用一個是庫函數(shù)
二、附加題
09
給出一組整數(shù)對 { (a[0], b[0]), (a[1], b[1]) ... (a[n-1], b[n-1]) },所有 a 值 和 b 值分別不重復(任意 i != j 滿足 a != a[j] 且 b != b[j])。構(gòu)造一棵 n 結(jié)點的二叉樹,將這 n 個整數(shù)對分配到各個結(jié)點上。根和所有子樹滿足以下條件:
1) 所有結(jié)點的 a 值滿足二叉查找樹的順序,即 left->a < root->a && root->a < right->a;
2) 所有結(jié)點的 b 值滿足最大堆的順序,即 root->b > left->b && root->b > right->b。
問題一:實現(xiàn) build 函數(shù),輸入 n 個整數(shù)對,返回一棵構(gòu)造好的二叉樹。
struct pair_t {
int a, b;
};
struct node_t {
int a, b;
node_t *left, *right;
};
node_t* build(pair_t* pair, int n);