shaaaronzy
基督城里
一、單選題 1.“秘密”是一款在朋友圈內(nèi)匿名交流的SNS平臺。假定每個(gè)人只能看到朋友發(fā)的帖子,卻不知道具體是誰發(fā)的;并且朋友關(guān)系是對稱的,即如果A是B的朋友,那么B也是A的朋友。某好事者希望知道一篇帖子具體是誰發(fā)的,他通過找?guī)讉€(gè)好友看看他們是否是這個(gè)帖子樓主的朋友,從而求“交集”,推斷樓主是誰。朋友圈是指彼此互為朋友的人群。什么樣的樓主容易被發(fā)現(xiàn)真實(shí)身份? A朋友很多的樓主。 B朋友很少的樓主。 C發(fā)負(fù)能量帖子的樓主。 D有很多個(gè)小朋友圈的樓主。 E發(fā)正能量帖子的樓主。 F只有一個(gè)大朋友圈的樓主。 2.有一個(gè)裝過食鹽的瓶子,容積是w,在食鹽用完之后,還有一些食鹽粉末(體積可以忽略)殘留在瓶子壁上。現(xiàn)在要把該瓶子改裝糖,給你u體積的純凈水,用來清洗該瓶子。在每次清洗之后,瓶子里會(huì)殘留至少v體積的水(食鹽溶液,可以忽略鹽的體積)。假設(shè)w>u>v,請問下述哪種方式使用這些純凈水,能把瓶子洗得最干凈______? A.把所有的純凈水全部倒入瓶子,然后把水倒掉。 B.將純凈水平均分為兩份,用每一份清水洗一遍瓶子。 C.每次注入體積為v的純凈水清洗瓶子,直到純凈水用盡。 D.每次注入體積為2v的純凈水清洗瓶子,直到純凈水用盡。 E.將用過的水重新注入瓶子,多次清洗。 F.以上方法清洗效果相同。 3.有一只火雞出生在某年春天。從出生第一天起,主人就會(huì)每天給它喂食。這只火雞用一個(gè)模型來計(jì)算主人對它的愛的程度=吃到米的天數(shù)/(出生之后的總天數(shù)+1)。這只火雞發(fā)現(xiàn)這個(gè)愛的指數(shù)每天都在上升。有一天感恩節(jié)到了,火雞被主人殺掉了。關(guān)于火雞的愛的指數(shù)模型的說法正確的是:______? A.火雞的模型之所以無效,是因?yàn)檫@個(gè)公式不是最大似然估計(jì)。 B.火雞的模型之所以無效,是因?yàn)檫@個(gè)愛的指數(shù)增長速度先快后慢。 C.火雞的模型之所以無效,是因?yàn)闆]有計(jì)算這個(gè)愛的指數(shù)的方差。 D.火雞的模型之所以無效,是因?yàn)榉帜?1了。 E.火雞的模型之所以無效,是因?yàn)橹魅颂珘牧恕? F.火雞的模型之所以無效,是因?yàn)榻y(tǒng)計(jì)的概率空間不完整。 4.下列方法中,______不可以用來程序調(diào)優(yōu) ? A.改善數(shù)據(jù)訪問方式以提升緩存命中率 B.使用多線程的方式提高I/O密集型操作的效率 C.利用數(shù)據(jù)庫連接池替代直接的數(shù)據(jù)庫訪問 D.使用迭代替代遞歸 E.合并多個(gè)遠(yuǎn)程調(diào)用批量發(fā)送 F.共享冗余數(shù)據(jù)提高訪問效率 5.并發(fā)進(jìn)程執(zhí)行的相對速度是______。 A.由進(jìn)程的程序結(jié)構(gòu)決定 B.由進(jìn)程本身來控制 C.進(jìn)程被創(chuàng)建時(shí)決定 D.與進(jìn)程調(diào)度策略有關(guān) E.與進(jìn)程的銷毀時(shí)間有關(guān) F.由內(nèi)存分配策略決定 6.動(dòng)態(tài)內(nèi)存分配(C語言中的malloc,C++中的new)得到的存儲(chǔ)區(qū)屬于內(nèi)存中的:______。 A.靜態(tài)區(qū) B.堆(heap) C.棧(stack) D.堆棧 E.內(nèi)核內(nèi)存 F.不確定 7.下列正則表達(dá)式不可以匹配” ”的是______。 A.^\w+\.\w+\-\w+\.\w+$ B.[w]{0,3}.[a-z\-]*.[a-z]+ C.[c-w.]{3,10}[.][c-w.][.][a] D.[w][w][w][alibaba-inc]+[com]+ E.^\w.*com$ F.[w]{3}.[a-z\-]{11}.[a-z]{3} 8.關(guān)于IP地址下列說法錯(cuò)誤的是______。 地址采用分層結(jié)構(gòu),它由網(wǎng)絡(luò)號與主機(jī)號兩部分組成 B.根據(jù)不同的取值范圍IP地址可以分為五類 屬于B類地址 D.每個(gè)C類網(wǎng)絡(luò)最多包含254臺主機(jī) 采用128位地址長度 類,B類和C類地址為內(nèi)部私有地址 9.某團(tuán)隊(duì)有 2/5的人會(huì)寫Java程序,有3/4的人會(huì)寫C++程序,這個(gè)團(tuán)隊(duì)里同時(shí)會(huì)寫Java和C++的最少有______人。 10.計(jì)算三個(gè)稠密矩陣A、B、C的乘積ABC,假定三個(gè)矩陣的尺寸分別為m*n, n*p, p*q,且m A.(AB)C (BC) C.(AC)B D.(BC)A E.(CA)B F.以上效率相同 11.棋盤上共有2020個(gè)格子,從1開始順序編號。棋子初始放在第1格,通過扔骰子決定前進(jìn)格子數(shù),扔出x點(diǎn)就前進(jìn)x格。骰子有6面,分別對應(yīng)1至6;質(zhì)量均勻。當(dāng)棋子到達(dá)2015或超過2015,游戲結(jié)束。那么,棋子剛好到達(dá)2015的概率與______最接近。 同學(xué)每天乘公交上學(xué),早上睡過頭或遇到堵車都會(huì)遲到;H早上睡過頭概率為,路上遇到堵車概率為;若某天早上H遲到了,那么以下推測正確的有______。 A.今天H早上睡過頭了 B.今天H早上睡過頭的概率為 C.今天H早上睡過頭的概率大于 D.今天H早上遇到堵車了 E.今天H早上遇到堵車的概率為 F.今天H早上遇到堵車的概率小于 13.個(gè)數(shù)約為50K的 數(shù)列需要進(jìn)行從小到大排序,數(shù)列特征是基本逆序(多數(shù)數(shù)字從大到小,個(gè)別亂序),以下哪種排序算法在事先不了解數(shù)列特征 的情況下性能大概率最優(yōu)(不考慮空間限制)______。 A.冒泡排序 B.改進(jìn)冒泡排序 C.選擇排序 D.快速排序 E.堆排序 F.插入排序 14.在以下操作中,數(shù)組比線性表速度更快的是______。 A.原地逆序 B.頭部插入 C.返回中間節(jié)點(diǎn) D.返回中間節(jié)點(diǎn) E.返回頭部節(jié)點(diǎn) F.選擇隨機(jī)節(jié)點(diǎn) 15.一個(gè)函數(shù)定義的返回值是float,它不能在 return語句中返回的值的類型是:______。 F.以上皆可以 16.某足球隊(duì)有四名外援,分別來自巴西、荷蘭、意大利和美國。他們分別擅長前鋒、后衛(wèi)或守門,其中: ① 美國外援單獨(dú)擅長守門; ② 意大利外援不擅長前鋒; ③ 巴西外援和另外某個(gè)外援擅長相同的位置; ④ 荷蘭外援擅長的位置和巴西外援不同。 以上條件可以推出巴西外援擅長的位置是______。 A.前鋒 B.守門 C.后衛(wèi) D.前鋒或守門 E.后衛(wèi)或守門 F.前鋒或后衛(wèi) 17.以下屬性中,______不是m階B樹特性。 A.根節(jié)點(diǎn)至少2子女節(jié)點(diǎn) B.非根節(jié)點(diǎn)包含的子女?dāng)?shù)j滿足:┌m/2┐ - 1 <= j <= m - 1 C.除根結(jié)點(diǎn)以外的所有內(nèi)部結(jié)點(diǎn)度數(shù)為存儲(chǔ)關(guān)鍵字總數(shù)加2 D.常用于計(jì)算機(jī)磁盤文件組織 D.葉節(jié)點(diǎn)均位于同一層 也常用于計(jì)算機(jī)磁盤文件組織 18.在一個(gè)單鏈表中,q的前一個(gè)節(jié)點(diǎn)為p,刪除q所指向節(jié)點(diǎn),則執(zhí)行______。 q; >next=p->next;delete p; >next=q->next;delete p; >next=q->next;delete q; p; >next=p->next;delete q main(){ fork()||fork();} 共創(chuàng)建幾個(gè)進(jìn)程:______。 20.程序出錯(cuò)在什么階段______? int main(void) { ; cout<<“welcome to taobao"; } A.預(yù)處理階段出錯(cuò) B.編譯階段出錯(cuò) C.匯編階段出錯(cuò) D.鏈接階段出錯(cuò) E.運(yùn)行階段出錯(cuò) F.程序運(yùn)行正常 二、附加題 1.針對無線互聯(lián)網(wǎng)的現(xiàn)狀和特殊性,請列舉可提升用戶體驗(yàn)的網(wǎng)絡(luò)相關(guān)優(yōu)化措施。(優(yōu)化點(diǎn)可包括客戶端、前端、服務(wù)端,甚至業(yè)務(wù)設(shè)計(jì)層面) 2.給定一個(gè)query和一個(gè)text,均由小寫字母組成。要求在text中找出以同樣的順序連續(xù)出現(xiàn)在query中的最長連續(xù)字母序列的長度。例如, query為“acbac”,text為“acaccbabb”,那么text中的“cba”為最長的連續(xù)出現(xiàn)在query中的字母序列,因此,返回結(jié)果應(yīng)該為其長度3。請注意程序效率。 3.寫一個(gè)函數(shù),輸入一個(gè)二叉樹,樹中每個(gè)節(jié)點(diǎn)存放了一個(gè)整數(shù)值,函數(shù)返回這棵二叉樹中相差最大的兩個(gè)節(jié)點(diǎn)間的差值絕對值。請注意程序效率。

大施兄帥呆了
面試阿里巴巴有多難,看看面經(jīng)你就知道了
研發(fā)工程師(Java)
我參與了阿里巴巴中間件部門的提前批面試,一共經(jīng)歷了四次面試,拿到了口頭offer。這是我的面經(jīng),在這里分享給大家。
一面:
1 自我介紹
2 項(xiàng)目中做了什么,難點(diǎn)呢。
3 Java的線程池說一下,各個(gè)參數(shù)的作用,如何進(jìn)行的。
4 Redis講一下
5 分布式系統(tǒng)的全局id如何實(shí)現(xiàn)。用zookeeper如何實(shí)現(xiàn)的呢,機(jī)器號+時(shí)間戳即可。
6 分布式鎖的方案,redis和zookeeper那個(gè)好,如果是集群部署,高并發(fā)情況下哪個(gè)性能更好。
7 kafka了解么,了解哪些消息隊(duì)列。
8 想做業(yè)務(wù)還是研究。
9 然后出了一道題,linux的訪問權(quán)限是rwx格式的。使用一個(gè)類支持訪問權(quán)限的增刪改查,并且注意使用的數(shù)據(jù)格式以及方法效率,規(guī)范。給了一個(gè)多小時(shí)寫題。
耗時(shí)將近30分鐘。
二面:
1 介紹你做的項(xiàng)目和其中的難點(diǎn)。
2 上次面試官問的問題,反射的作用是什么。
3 數(shù)據(jù)倉庫,多線程和并發(fā)工具等。
4 私有云,docker和k8s等。
5 了解哪些中間件,dubbo,rocketmq,mycat等。
6 dubbo中的rpc如何實(shí)現(xiàn)。
7 自己實(shí)現(xiàn)rpc應(yīng)該怎么做
9 dubbo的服務(wù)注冊與發(fā)現(xiàn)。
10 聽說我是非科班,于是問了些排序算法
耗時(shí)將近30分鐘。
三面:
三面不是面試,而是筆試,耗時(shí)三個(gè)小時(shí),考的是Java核心的基礎(chǔ)。但是好像不能透題,就不說了。都挺有難度的。
大概說一下就是有幾個(gè)考點(diǎn),Java并發(fā)的知識點(diǎn),集合類,線程池,多線程之間的通信等。
HR面:
聊人生談理想,HR小姐姐非常溫柔,交流十分愉快。30分鐘。
優(yōu)質(zhì)工程師考試問答知識庫