18家知名企業(yè)技術(shù)崗位秋招試題_第1頁
18家知名企業(yè)技術(shù)崗位秋招試題_第2頁
18家知名企業(yè)技術(shù)崗位秋招試題_第3頁
18家知名企業(yè)技術(shù)崗位秋招試題_第4頁
18家知名企業(yè)技術(shù)崗位秋招試題_第5頁
已閱讀5頁,還剩175頁未讀, 繼續(xù)免費閱讀

下載本文檔

版權(quán)說明:本文檔由用戶提供并上傳,收益歸屬內(nèi)容提供方,若內(nèi)容存在侵權(quán),請進行舉報或認(rèn)領(lǐng)

文檔簡介

18家知名企業(yè)技術(shù)崗位秋招試題目錄2018eBayJava秋招試題 5一、選擇題 52018百度客戶端秋招試題 8一、選擇題 8二、問答題 18三、在線編程 192018嗶哩嗶哩秋招試題 22一、編程題 22二、簡答題 222018餓了么前端秋招試題 24一、單選題 24二、多選題 25三、填空題 27四、簡答題 272018高新興秋招試題 29一、前端選擇題 29二、JAVA基礎(chǔ)題 31三、簡答題 33四、數(shù)據(jù)庫 352018聯(lián)想java秋招試題 37一、單選題 37二、簡答題 392018鏈家Java秋招試題 43一、單選題 43二、編程題 502018freewheeljava秋招試題 53一、問答題 53二、不定項選擇題 53三、填空題 55四、問答題 552018科大訊飛java秋招試題 65一、單選題 65二、多選題 74三、簡答題 792018今日頭條秋招試題 93一、單選題 93二、編程題 952018鏈家前端秋招試題 98一、單選題 982018綠盟科技秋招試題 107一、單選題 1072018銳捷秋招試題 122一、單選題 122二、多選題 1292018途牛秋招試題 132一、單選題 132二、問答編程題 1362018趣店秋招試題 138一、單項選擇題 138二、不定項選擇題 1472018神州付秋招試題 151一、單選題 151二、多選題 153三、問答題 1542018盛大游戲Java秋招試題 155一、單選題 155二、多選題 159三、編程題 1632018同花順前端秋招試題 167一、基礎(chǔ)題 167二、開放邏輯題 171三、編程題 171四、閱讀題 1732018eBayJava秋招試題一、選擇題1.

一個進程名的關(guān)鍵字是”eBayTest”,下列指令,可以殺死這個進程的是(D)A.

Pkill-f

“eBayTest”B.

kill-9

“eBayTest”C.

Ps

-ef|grepeBayTest|grep-vgrep|awk‘{print$2}’|xwagskillD.

kill-9$(pidofeBayTest)

2.eBay內(nèi)部的私有云是搭建在Openstack之上的。在分配資源時,下列哪些IP段位位于私有(保留)IP地址段?(ABC)A.

-55B.

-55C.

-55D.

-55

3.

eBay數(shù)據(jù)中心中,同時部署了固態(tài)硬盤和機械硬盤。下列關(guān)于機械硬盤與固態(tài)硬盤的陳述,正確的是(A

)。A.

固態(tài)硬盤在數(shù)據(jù)讀寫方面比機械硬盤有質(zhì)的提升,尤其是隨機讀寫B(tài).

如果想在數(shù)據(jù)中心大規(guī)模部署固態(tài)硬盤,需要比機械硬盤更加注意對溫度的控制C.

固態(tài)硬盤的數(shù)據(jù)比機械硬盤更容易恢復(fù)D.

與機械硬盤相比,固態(tài)硬盤有更加長的壽命

4.請推算出下列數(shù)列的下一個數(shù)字:173,184,197,214,(C)A.

216B.

232C.

235D.

221

5.下列有關(guān)操作系統(tǒng)中斷的描述,正確的是(

ABC

A.

硬中斷和軟中斷的一個重要區(qū)別是,硬中斷可以直接中斷CPU,而軟中斷不能B.

硬中斷和軟中斷最終都會用到內(nèi)核中的設(shè)備驅(qū)動程序C.

程序中產(chǎn)生的I/O請求是一種常見的軟中斷,軟中斷可以不經(jīng)過CPU,直接發(fā)送給內(nèi)核中的設(shè)備驅(qū)動程序D.

由磁盤產(chǎn)生的中斷是硬中斷,而由網(wǎng)卡產(chǎn)生的中斷是軟中斷

9.下列程序,是用來計算選項中的哪個問題的?(C

)voidsolve(inta[],intk,intN){

if(k==N-1){

output(a,N);}else{

for(inti=k;i<N;i++){swap(a,i,k);solve(a,k+1,N);swap(a,i,k);}

}}A.

排列問題B.

斐波那契數(shù)列C.

漢諾塔問題D.

組合問題

10.如果非對稱加密算法遭到破解,以下哪些技術(shù)會遭到滅頂之災(zāi)?(A)A.

SSLB.

EthereumC.

HashD.

Blockchain

11.以下陳述正確的是(

B)A.

Deeplearning的performance只有在數(shù)據(jù)量比較大的情況下才比較有優(yōu)勢B.

其他全部錯誤C.

Deeplearning是誕生于這個世紀(jì)的機器學(xué)習(xí)算法D.

Vectorization是使用GPU的前提

12.下列數(shù)中,數(shù)值最大的是(D

)A.

(123)11進制B.

(1100010)2進制C.

(226)8進制D.

(99)16進制

2018百度客戶端秋招試題一、選擇題1、下列代碼的運行結(jié)果是:BA<5<5<5<5B>5<5<5<5C<5>5<5<5D<5>5<5>52、關(guān)于啟動服務(wù)下列說法正確的是CA如果service已經(jīng)啟動,將先后調(diào)用onCreate()和onStart()方法B如果service已經(jīng)啟動,只會執(zhí)行onCreate()方法,不在執(zhí)行onStart()方法C當(dāng)?shù)谝淮螁拥臅r候先后調(diào)用onCreate()和onStart()方法D當(dāng)?shù)谝淮螁拥臅r候只會調(diào)用onCreate()方法3、使用T-SQL創(chuàng)建一個名為“通訊錄”的表,要求為:編號(int自動編號為主鍵)姓名(char(8)不可空)性別(char(2)默認(rèn)值‘男’)出生日期(datetime)聯(lián)系方式(char(16))備注(text)下面建表語句正確的是:(C)Acreatetable雇員基本信息表{NO_IDchar(7)notnullprimarykey.NAMEchar(10)null.SEXchar(2)notnulldefault‘男’。AGEINTNOTNULL,DEPTVARCHAR(50)NULL,PHONEVARCHAR(20)NULL,NOTESVARCHAR(50)NULL}Bcreatetable雇員基本信息表{NO_IDchar(7)notnullprimarykey.NAMEchar(10)notnull.SEXchar(2)notnullAGEINTNOTNULL,DEPTVARCHAR(50)NULL,PHONEVARCHAR(20)NULL,NOTESVARCHAR(50)NULLCcreatetable通訊錄{編號intidentity(1,1)notnullprimaryKey,姓名char(8)notnull,性別char(2),出生日期DatetimeNULL,聯(lián)系方式char(16)NULL,備注TextNULL);Dcreatetable雇員基本信息表{NO_IDchar(7)notnullprimarykey.NAMEchar(10)NOTnull.SEXchar(2)notnulldefault‘男’。AGEINTNOTNULL,DEPTVARCHAR(50)NULL,PHONEVARCHAR(20)NULL,NOTESVARCHAR(50)NULL4、viewgruop的繪制過程以下說法正確的是DAlayout->measure_>drawBmeasure->draw->layoutCdraw->layout->measureDmeasure->layout->draw5、一個待散列線性表為K={27,18,66,57,36,79,94,41},散列函數(shù)為H(K)=KMOD13,與27發(fā)生沖突的元素有幾個(C)A1B4C2D36、關(guān)于啟動服務(wù),下列說法錯誤的是(B)A采用bindService()方法啟動服務(wù)時,訪問者與服務(wù)是綁定在一起的,即訪問者退出,服務(wù)也就停止,解除綁定B如果是調(diào)用bindservice()啟動服務(wù):會調(diào)用如下聲明周期方法:onCreate()>onBind>onDestroy--onUnbind()C當(dāng)采用startService方法啟動服務(wù),訪問者與服務(wù)之間是沒有綁定在一起的,訪問者退出,服務(wù)者還在運行D通過startService()啟動服務(wù),會調(diào)用如下生命周期方法:onCreate()--onStart()>onDestary()7、ARM存儲類型有哪些BDAflat-endiannessBlittle-endiannessC其他三項都有Dbig-endianness8、ARMV8處理器描述正確的有(ABCD)A支持hugepageB64位處理器C支持虛擬化D支持securemode9、設(shè)有序表986個元素,則用二分查找元素X最多需要比較(A)次A10B1C8D98610、關(guān)于ARM終端,下列說法中錯誤的是ADA在ARMLinux系統(tǒng)中,中斷處理程序進入C代碼以后,ARM處于IRQ工作模式BARM處理器中,引起異常發(fā)生的外部產(chǎn)生的中斷包括復(fù)位中斷,F(xiàn)IQ,IRQC在ARM處理器的各個模式中,只有FIQ有自己獨立的R8-R14寄存器D在ARM系統(tǒng)中,用來處理外設(shè)中斷的異常模式是快速中斷請求11、關(guān)于ImageView的說法錯誤的是CAadjustViewBounds調(diào)整邊框時是否保持可繪制對象的寬高比BscaleType用來設(shè)置圖片的填充方式C需要在配置文件中注冊Dsrc用來設(shè)置展示的圖片12、設(shè)散列函數(shù)為H(K)=KMODE11,并使用鏈接法解決沖突,將下列數(shù)字{35,67,42,21,29,86,95,47,50,36,91}依次插入散列表中,則該平均查找長度為BA11/17B11/16C11/15D其它幾項都不正確13、ARMV8系統(tǒng)物理地址線為多少位(D)A32B48C20D6414、在Activity中,如何獲取service對象AA通過getService()獲取B可以通過直接實例化得到C可以通過綁定得到。D通過startService()15、小明到集市上套瓷娃娃,有n個娃娃排成,編號為0到n-1,每個瓷娃娃有積分,存在score數(shù)組中,套中一個娃娃i可以得到的分?jǐn)?shù)為score[left]*score[i]*score[right],left和right分別表示瓷娃娃i相玲的兩個瓷娃娃,當(dāng)瓷娃娃i被套中撒走后,其左右兩個瓷娃娃即為相鄰,若要求出套中所有瓷娃娃所能得到的最高積分,則應(yīng)該使用何種算法?CA分治法B貪心算法C動態(tài)規(guī)劃D回溯法16、繪制數(shù)據(jù)流圖應(yīng)遵循的準(zhǔn)則是(C)A在數(shù)據(jù)流圖中用圓框表示數(shù)據(jù)源和數(shù)據(jù)池,用方框表示變換/加工B每個變換框至少要有一個輸出數(shù)據(jù)流,但可以沒有輸入數(shù)據(jù)流C任何一個數(shù)據(jù)流必須與它的父圖的一個變換框?qū)?yīng),兩者的輸入數(shù)據(jù)流和輸出數(shù)據(jù)流必須一致D在分層的數(shù)據(jù)流中,頂層的圖編號為117、給你2G的數(shù)據(jù)和2g的內(nèi)存,以下哪種算法可能導(dǎo)致內(nèi)存溢出BA冒泡排序B歸并排序C堆排序D選擇排序18、下列有關(guān)于活動圖的敘述中正確的是ADA僅有一個起始點B可以有多個起始點C可以有多個結(jié)束點D僅有一個結(jié)束點19、一個有131個元素的順序表,插入一個新元素并保持原來的順序不變,平均要移動(D)元素,刪除一個元素平均需要移動(D)個元素A65,64B67,66C9,8D65.5,6520、辦公室某計算機配置的首選DNS為備用DNS為;網(wǎng)絡(luò)管理員測試備用DNS服務(wù)器解析HYPERLINK,下列方式正確的是`AAnslookup回車Dnserver回車HYPERLINKBnslookup回車HYPERLINKCnslookupHYPERLINK回車Dnslookup回車Lserver回車HYPERLINK21、PendingIntent主要的使用場景是(ABCD)A通過Notification發(fā)起一個工作B發(fā)送短信后獲取回執(zhí)C由定時器控制在特定時間執(zhí)行的動作D在widget設(shè)置響應(yīng)用于操作的動作22、下列說法錯誤的是CAFragment使用setArguments傳遞參數(shù)BFragment使用getArguments接收參數(shù)C在Activity使用getSupportFragemntManager來獲得碎片管理者DFragmentManagr使用popoBackStack將Fragment彈出棧23、已知表長為28的哈希表,用除留余數(shù)法,按公式H(key)=keyMODp建立哈希表,則p應(yīng)?。―)為宜。A28B17C21D2324、輸出結(jié)果為DA33.3:3B33C33.3D325、網(wǎng)絡(luò)工程師在配置無盤網(wǎng)絡(luò)時需要使用rarp協(xié)議,下列對rarp描述錯誤的是ABDArarp協(xié)議根據(jù)主機IP地址解析對應(yīng)的MAC地址Brarp協(xié)議把域名解析為主機IP地址Crarp協(xié)議根據(jù)主機MAC地址解析對應(yīng)的IP地址Drarp協(xié)議傳輸系統(tǒng)啟動文件26、利用分支限界法可以解決下列哪些問題ABCDA最大團問題B電路排列問題C批處理作業(yè)調(diào)度問題D裝載問題27、以下描述錯誤的是BAKMP算法的時間復(fù)雜度是O(N)B堆排序最好情況和最壞情況下時間復(fù)雜度不同CPageRank算法總是會收斂D快速排序在被排序的數(shù)據(jù)完全無序時最容易發(fā)揮其長處28、ARM指令分為哪些類ACA跳轉(zhuǎn)指令B異常產(chǎn)生指令Cload/store內(nèi)存訪問指令D系統(tǒng)寄存器指令29、請指出以下代碼段使用了何種算法AA分治法B回溯法C貪心算法D動態(tài)規(guī)劃二、問答題AsyncTask使用在哪些場景?使用時需要注意哪些內(nèi)容?多個AsyncTask能否并行執(zhí)行?如果項目中濫用AsynTask會有什么問題,并提出改進意見。三、在線編程1、正三角形的頂點位置題目描述:給出直角三角坐標(biāo)平面上三角形其中兩個頂點的坐標(biāo),求第三個頂點的坐標(biāo),要求保留小數(shù)點后兩位小數(shù)輸入有多組測試數(shù)據(jù),輸入的第一行是整數(shù)T(1<=T<=200)表示隨后測試數(shù)據(jù)的組數(shù)。每組測試數(shù)據(jù)占一行,由4個帶兩位小數(shù)由一個空格隔開的實數(shù)構(gòu)成,表示已知的兩個頂點的橫縱坐標(biāo)。輸出對應(yīng)每組測試數(shù)據(jù),輸出對應(yīng)的第三個頂點(兩組解),如果兩組解的橫坐標(biāo)不相等,則先輸出橫坐標(biāo)較小的頂點,否則輸出縱坐標(biāo)較小的頂點,每組輸出占一行,輸出保留兩位小數(shù)樣列輸入312.003.0012.009.0012.003.0024.003.001.002.003.004.00樣例輸出6.806.0017.206.0018.00-7.3918.0013.390.274.733.731.272、雙素數(shù)題目描述:一個正整數(shù)是素數(shù)當(dāng)且僅當(dāng)它除了1和自身以外沒有其他因子,現(xiàn)在我們定義雙素數(shù);一個正整數(shù)是雙素數(shù)當(dāng)且僅當(dāng)它本身是個素數(shù),并且將他的十進制表示反轉(zhuǎn)后得到數(shù)不等于它自身且也是個素數(shù),如13就是一個雙素數(shù),因為13和31不相等且都是素數(shù),現(xiàn)給出一個整數(shù)k,你需要找到第k小的雙素數(shù)輸入第一行包含一個整數(shù)k,1<=k<=10000輸出若第k小的素數(shù)不超過10^6則輸出它,否則輸出-1樣例輸入1樣例輸出133、序列合并題目描述:其中系數(shù)aj都是整數(shù)滿足0<=aj<=1000且至少有兩個系數(shù)嚴(yán)格大于0,分別將n=1,n=2,n=3n...代入以上函數(shù)可以得到一個無窮長度的整數(shù)序列,即用8個系數(shù)a7,a6...a0可以唯一確定一個無窮長度的整數(shù)序列,現(xiàn)在給出k個通過以上方法定義的無窮序列,你需要求出將這些序列所有數(shù)字放在一起后,第n小的數(shù)字是多少?輸入第一行包含一個整數(shù)k,1<=k<=10^4接下來k行,每行包含8個整數(shù)a7,a6,a0,表示一個函數(shù)的系數(shù),0<=aj<=1000最后一行包含一個整數(shù)n,1<=n<=10^5輸出輸出對應(yīng)的答案,保證最后的答案不超過10^17樣列輸入3000012000000001060000002519樣例輸出512018嗶哩嗶哩秋招試題一、編程題運動員甲,假設(shè)從起點出發(fā),跑了N(1<=N<=10)步后會90度轉(zhuǎn)折再跑N步,從起點出發(fā)后續(xù)經(jīng)歷3次轉(zhuǎn)折回到起點。跑步的起始步數(shù)下標(biāo)標(biāo)記為1,每跑一步進行+1,那么跑出的圖形是什么樣的?

輸入

N(1<=N<=10)

輸出

跑步的圖形

示例:

輸入

9

輸出

123456789

3210

3012

2913

2814

2715

2616

252423222120191817二、簡答題1.找出數(shù)組中兩個只出現(xiàn)一次的數(shù)字:一個整型數(shù)組里除了兩個數(shù)字之外,其他的數(shù)字都出現(xiàn)了兩次。請寫程序找出這兩個只出現(xiàn)一次的數(shù)字。要求時間復(fù)雜度是O(1).要求:給出算法描述,并且給出核心代碼2.SNS系統(tǒng)中一般都包含“站內(nèi)短信”的功能。假設(shè)一個SNS系統(tǒng)有百萬級的用戶,每日活躍用戶為千級別;現(xiàn)在要求實現(xiàn)用戶與用戶之間的站內(nèi)短信,還要實現(xiàn)管理員與所有用戶的站內(nèi)短信,請給出相應(yīng)的數(shù)據(jù)設(shè)計以及功能實現(xiàn)方案。3.什么是CDN,它的加速原理和優(yōu)化策略有哪些?2018餓了么前端秋招試題一、單選題1.如果a===a為false,則說明a是:B

A.Infinity

B.NaN

C.Undefined

D.Null2.頁面文檔完全加載并解析完畢之后會觸發(fā)的事件是:CA.ready

B.load

C.DOMContentLoaded

D.DOMContentReady3.‘string’instanceofString的結(jié)果是:BA.true

B.false4.下面哪條語句可以獲取元素e相鄰的下一個元素:AA.e.nextSibling()

B.e,nextElement()

C.e.nextElementSibling()

D.e.next()二、多選題5.以下會觸發(fā)reflow的操作有?(ACD)

A.改變?nèi)我庠豩eight/width

B.改變background-color

C.改變?yōu)g覽器窗口大小

D.改變font-size6.以下哪些可以作為mediaqueries的條件?(ABCD)A.設(shè)備寬度

B.設(shè)備高度

C.設(shè)備類型

D.設(shè)備像素比7.下列說法正確的是:(AB)A.樣式文件的加載會阻塞腳本的執(zhí)行

B.iframe會阻塞主頁面的load事件

C.window.location.href=‘’和

D.window.location.replace(“”)的效果是等價的

E.<audio>、<img>中的資源下載會阻塞頁面解析8.以下幾組標(biāo)簽中全部符合HTML5標(biāo)準(zhǔn)的是:(A)A.<section><audio><video>

B.<address><svg><aside>

C.<nav><image><footer>

D.<fieldset><canvas><pre>9.下面說法錯誤的是:(BCD)A.window.alert是一個同步方法,會阻塞腳本的執(zhí)行

B.setTimeout(foo,0)這行代碼可以等價替換為foo()

C.在addEventListener的處理方法中使用e.preventDefault()可以阻止事件冒泡

D.String(‘a(chǎn)bc’)和newString(‘a(chǎn)bc’)是等價的10.以下代碼的運行結(jié)果是:(D)varfoo=‘string’

foo.substring(2,1)

console.log(foo)

A.‘t’

B.‘r’

C.‘’

D.‘string’11.下列屬于塊級元素的是:(AC)A.<p>

B.<span>

C.<h3>

D.<a>12.以下關(guān)于CSS的描述,錯誤的是:(BC)A.內(nèi)聯(lián)樣式聲明擁有最高優(yōu)先級

B.缺省情況下都是塊級元素

C.position:absolute的元素總是相對于position:relative的元素定位

D.cmempxpt均屬于CSS尺寸單位三、填空題13.告訴HTTP客戶端需與服務(wù)端保持長連接的header是(Connection:Keep-Alive)

14.設(shè)置一個元素浮動之后,該元素的display值自動變成了(block)。

15.HTTP協(xié)議中屬于safemethod的method(是GET、HEAD)。四、簡答題16.如何實現(xiàn)一個實時的“消息提醒”功能?

17.補全下面的代碼,實現(xiàn)一個四分之一圓:<divclass=”quarter”></div>

.quarter{

width:100px;

height:100px;

background-color:blue;

border-radius:100px000;

}

18.以下遞歸函數(shù)存在棧溢出的風(fēng)險,請問如何優(yōu)化?

functionfactorial(n){

returnn*factorial(n-1)

}

19.請實現(xiàn)一個計算最大公約數(shù)的函數(shù):

functiongreatestCommonDivisor(a,b){

//在這里編寫代碼

}

greatestCommonDivisor(8,12)//4

greatestCommonDivisor(8,16)//8

greatestCommonDivisor(8,17)//12018高新興秋招試題一、前端選擇題1、下面哪個屬性不會讓div脫離文檔流?(C)A.position:absolute;B.position:fixed;C.position:relative;D.folat:left2、CSS中以下哪個屬性指的是外邊距(B)A.paddingB.marginC.widthD.border3、以下關(guān)于postion定位錯誤的是(D)A.absolete:生成絕對定位的元素,相對于值不為static的第一個父元素進行定位。B.fixed:生成絕對定位的元素,相對于瀏覽器窗口進行定位。C.relative:生成相對定位元素D.static:從父元素繼承position屬性的值4、javascript的this對象描述錯誤的是(D)A.This總是指向函數(shù)的直接調(diào)用者B.如果有new關(guān)鍵字,this指向new出來的哪個對象C.在事件中,this指向觸發(fā)這個事件的對象,特殊的是,IE中的attachEvent中的this總是指向全局對象windowD.調(diào)用函數(shù)的時候,函數(shù)上下文的this不可以被apply指定5、聲明一個對象,給它加上name屬性和show方法顯示其name值,以下代碼中正確的是(D)A.varobj=[name:”zhangsan”,show:function(){alert(name);}];B.varobj=[name:”zhangsan”,show:”alert()”};C.varobj={name:”zhangsan”,show:function(){alert(name);}};D.varobj={name:”zhangsan”,show:function(){alert();}};6、下列選項中,用來改變背景顏色的樣式屬性是(A)A.background-colorB.bgcolorC.colorD.backcolor7、下面截取字符串varstr=”adefrhts”的hts正確的是(A)A.t.substring(5);B.str.substr(5,7);C.Str.substring(4,6)D.Str.substr(4)8、下面有關(guān)JavaScript中,call和apply的描述,錯誤的是(B)A.Call與happy都屬于Ftotype的一個方法,所以每個function實例都有call、apply屬性B.兩者傳遞的參數(shù)不同,call函數(shù)第一個參數(shù)都是要傳入給當(dāng)前對象的對象,apply不是C.Apply傳入的是一個參數(shù)數(shù)組,也就是將多個參數(shù)組合成為一個數(shù)組傳入D.Call傳入的則是直接的參數(shù)列表。Call方法可將一個函數(shù)的對象上下文從初始的上下文改變?yōu)橛蓆hisObj指定的新對象9、下面代碼的輸出結(jié)果為(B)vara=newObject();a.value=1;b=a;b.value=2;arert(a.value);A.1B.2C.UndefinedD.null10、下列代碼的輸出結(jié)果為(A)varperson={fname:”John”,lname:”Doe”,age:25};vartxt=””;for(xinperson){txt=txt+person[x];}alert(txt);A.JohnDoe25B.fname:”John”,lname:”Doe”,age:25C.fname:John,lname:Doe,age:25D.Fnamelnameage二、JAVA基礎(chǔ)題1、下面代碼的運行結(jié)果是(C)Stringstr1=“hello”;Stringstr2=“he”+newString(“l(fā)lo”);System.out,println(str1==str2);System.out,println(str1.equals(str2));A.true,trueB.false,falseC.false,trueD.true,false2、下面代碼的運行結(jié)果是(C)inti=8;System.out,println(++i+1);System.out,println(i+++1);A.9,9B.9,10C.10,10D.10,113、下面方法輸入?yún)?shù)為2時,返回結(jié)果是(D)publicstaticintgetValue(inti){intresult=0;switch(i){case1:result=result+i;case2:result=result+i*2;case3:result=result+i*3;default:result+=4;}returnresult;}A.0B.4C.10D.144、選項中哪一行代碼可以替換題目中//addcodehere而不會產(chǎn)生編譯錯誤?(A)publicabstractclassMyClass{publicintconstInt=5;//addcodeherepublicvoidmethod(){}}A.publicabstractvoidmethod(inta);B.constlnt=consrlnt+5;C.publicintmethod();D.publicabstrctvoidanotherMethod(){}5、下列流創(chuàng)建語句錯誤的是(C)A.fis=new(newFile(“D/test.txt”));B.fis=new(“D/test.txt”);C.BufferedReaderbr=newBufferedReader(new(“D/test.txt”));D.BufferedReaderbr=newBufferedReader(newInputStreamReader(new(“D/test.txt”)));三、簡答題1、下面程序的運行結(jié)果是?classHelloA{publicHelloA(){System.out.println(“HelloA”);}{System.out.println(“I’mAclass”);}static{System.out.println(“staticA”);}}publicclassHelloBextendsHelloA{publicHelloB(){System.out.println(“HelloB”);}{System.out.println(“I’mBclass”);}static{System.out.println(“staticB”);}publicstaticvoidmain(String[]args){newHelloB();}}請輸入答案:staticAstaticI’mAclassHelloAI’mBclassHelloB2、談?wù)剆ynchronized和Lock的區(qū)別。請輸入答案:四、數(shù)據(jù)庫1、有學(xué)生表、成績表結(jié)構(gòu)如下,請問查詢平均成績大于分的同學(xué)的學(xué)號和平均成績的SQL語句正確的是()Student(SNo,Sname,Sage,Ssex)學(xué)生表SNo:學(xué)號;Sname:學(xué)生姓名;Sage:學(xué)生年齡;Ssex:學(xué)生性別SC(SNo,CNo,Score)成績表SNo:學(xué)號;CNo:課程編號;Score:成績A.selectSNo,avg(score)fromscgroupbySNohavingavg(score)>70;B.selectSNo,avg(score)fromscwhereavg(score)>70groupbySNo;C.selectSNo,avg(score)fromschavingavg(score)>70groupbySNo;D.selectSNo,avg(score)fromscgroupbySNowhereavg(score)>70;2、設(shè)有圖書管理系統(tǒng)圖書(總編號C(6),分類號C(8),書名C(16),作者C(6),出版單位C(20),單價N(6,2))讀者(借書證號C(4),單位C(8),姓名C(6),性別C(2),職稱C(6),地址C(20))借閱(借書證號C(4),總編號C(6),結(jié)束日期D(8))對于圖書管理數(shù)據(jù)庫,要查詢所藏圖書中,各個出版社的圖書最高單價、平均單價和冊數(shù),下面SQL語句正確的是()SELECT出版單位,,,;FROM圖書管理!圖書出版單位A.MIN(單價)AVGAGE(單價)COUNT(*)GROUPBYB.MIN(單價)AVG(單價)COUNT(*)GROUPBYC.MAX(單價)AVG(單價)SUM(*)ORDERBYD.MAX(單價)AVG(單價)COUNT(*)GROUPBY3、在刪除整表數(shù)據(jù),同時保留表結(jié)構(gòu)時,效率最高的是()A.deleteB.droptableC.truncatetableD.copytable4、索引字段值不唯一,應(yīng)該選擇的索引類型為()A.主鍵索引B.普通索引C.候選索引D.唯一索引5、下只有滿足聯(lián)接條件的記錄才包含在查詢結(jié)果中,這種聯(lián)結(jié)為()A.左聯(lián)接B.右聯(lián)接C.內(nèi)部聯(lián)接D.完全聯(lián)接2018聯(lián)想java秋招試題一、單選題1.在數(shù)據(jù)結(jié)構(gòu)中,從邏輯上可以把數(shù)據(jù)結(jié)構(gòu)分為()

A.動態(tài)結(jié)構(gòu)和靜態(tài)結(jié)構(gòu)

B.緊湊結(jié)構(gòu)和非緊湊結(jié)構(gòu)

C.線性結(jié)構(gòu)和非線性結(jié)構(gòu)

D.內(nèi)部結(jié)構(gòu)和外部結(jié)構(gòu)參考答案:C2.在順序表(3,6,8,10,12,15,16,18,21,25,30)中,用二分法查找關(guān)鍵碼值11,所需的關(guān)鍵碼比較次數(shù)為()

A.4

B.5

C.2

D.3

參考答案:A

解析:

正確的二分查找應(yīng)該是一次折半后,high=middle-1或者low=middle+1;

所以第一次查找時high=10,low=0;middle=0+10/2=5,即15,比較一次發(fā)現(xiàn)大了,記1次;

第二次查找時high=5-1=4,low=0;middle=0+(5-1-0)/2=2,即8,比較一次發(fā)現(xiàn)小了,記1次;

第三次查找時high=4,low=2+1=3;middle=3+(4-3)/2=3,即10,比較一次發(fā)現(xiàn)小了,記1次;第四次查找時此時low=3+1=4,而此時high=4,故查找結(jié)束。比較次數(shù)為4次,選A若進棧序列為1,2,3,4,進棧過程中可以出棧,則下列不可能的一個出棧序列是()

A.3,1,4,2

B.1,4,3,2

C.3,4,2,1

D.2,3,4,1參考答案:A以下程序輸出的結(jié)果為()

main()

{1234567Char*alpha[6]={"ABCD","EFGH","IJKL","MNOP","QRST","UVwX"};char**p;inti;p=alpha;for(i=0;i<4;i++){printf("%s",p[i]);}}A.AEIM

B.ABCDEFGHIJKLMNOP

C.ABCD

D.ABCDEFGHIJKL參考答案:B5.對于n個結(jié)點的單向鏈表(無表頭結(jié)點),需要指針單元的個數(shù)至少為()

A.n-1

B.n+1

C.n

D.2n

參考答案:B解析:在n個結(jié)點的單向鏈表(無表頭結(jié)點)中,每個結(jié)點都有一個指針單元(即指針域),加上頭指針,至少需要n+1個指針單元。二、簡答題1.ArrayList和LinkedList有什么區(qū)別?

答:ArrayList和LinkedList在性能上各有優(yōu)缺點,都有各自所適用的地方,總的說來可以描述如下:

1)對ArrayList和LinkedList而言,在列表末尾增加一個元素所花的開銷都是固定的。對ArrayList而言,主要是在內(nèi)部數(shù)組中增加一項,指向所添加的元素,偶爾可能會導(dǎo)致對數(shù)組重新進行分配;而對LinkedList而言,這個開銷是統(tǒng)一的,分配一個內(nèi)部Entry對象。

2)在ArrayList的中間插入或刪除一個元素意味著這個列表中剩余的元素都會被移動;而在LinkedList的中間插入或刪除一個元素的開銷是固定的。

3)LinkedList不支持高效的隨機元素訪問。

4)ArrayList的空間浪費主要體現(xiàn)在在list列表的結(jié)尾預(yù)留一定的容量空間,而LinkedList的空間花費則體現(xiàn)在它的每一個元素都需要消耗相當(dāng)?shù)目臻g可以這樣說:當(dāng)操作是在一列數(shù)據(jù)的后面添加數(shù)據(jù)而不是在前面或中間,并且需要隨機地訪問其中的元素時,使用ArrayList會提供比較好的性能;當(dāng)你的操作是在一列數(shù)據(jù)的前面或中間添加或刪除數(shù)據(jù),并且按照順序訪問其中的元素時,就應(yīng)該使用LinkedList了。2.簡單敘述JDBC連接數(shù)據(jù)庫核心步驟。

答:

1)加載JDBC驅(qū)動程序

2)提供JDBC連接的URL

3)創(chuàng)建數(shù)據(jù)庫的連接

4)創(chuàng)建一個Satement

5)執(zhí)行SQL語句

6)處理返回結(jié)果7)關(guān)閉JDBC對象3.簡單描述你對java的認(rèn)識,從語言,平臺,框架方面。

答:語法簡單,面向?qū)ο?,穩(wěn)定,與平臺無關(guān),多線程,動態(tài)等特點,而與平臺無關(guān)是java風(fēng)靡全球的重要原因。(與平臺無關(guān)是指軟件的運行不因操作系統(tǒng)、處理器的變化而無法運行或出現(xiàn)運行錯誤)注:java可以在計算機的操作系統(tǒng)上再提供一個java運行環(huán)境(JRE,JavaRuntimeEnvironment),該環(huán)境由java虛擬機JVM、類庫和一些核心文件組成。4.什么是進程(Process)和線程(Thread)?有何區(qū)別?

答:

1)含義

進程是具有一定獨立功能的程序關(guān)于某個數(shù)據(jù)集合上的一次運行活動,進程是系統(tǒng)進行資源分配和調(diào)度的一個獨立單位.

線程是進程的一個實體,是CPU調(diào)度和分派的基本單位,它是比進程更小的能獨立運行的基本單位.線程自己基本上不擁有系統(tǒng)資源,只擁有一點在運行中必不可少的資源(如程序計數(shù)器,一組寄存器和棧),但是它可與同屬一個進程的其他的線程共享進程所擁有的全部資源.

2)區(qū)別

(1)一個程序至少有一個進程,一個進程至少有一個線程.

(2)線程的劃分尺度小于進程,使得多線程程序的并發(fā)性高。

(3)進程在執(zhí)行過程中擁有獨立的內(nèi)存單元,而多個線程共享內(nèi)存,從而極大地提高了程序的運行效率。

(4)線程在執(zhí)行過程中與進程還是有區(qū)別的。每個獨立的線程有一個程序運行的入口、順序執(zhí)行序列和程序的出口。但是線程不能夠獨立執(zhí)行,必須依存在應(yīng)用程序中,由應(yīng)用程序提供多個線程執(zhí)行控制。(5)從邏輯角度來看,多線程的意義在于一個應(yīng)用程序中,有多個執(zhí)行部分可以同時執(zhí)行。但操作系統(tǒng)并沒有將多個線程看做多個獨立的應(yīng)用,來實現(xiàn)進程的調(diào)度和管理以及資源分配。5.介紹編譯系統(tǒng)核心主要步驟。

答:

1)下載新內(nèi)核源代碼

2)解壓內(nèi)核源代碼

3)配置內(nèi)核參數(shù)

4)編譯內(nèi)核

5)啟動新內(nèi)核2018鏈家Java秋招試題一、單選題1、在Java中下列關(guān)于自動類型轉(zhuǎn)換說法正確的是()。A.基本數(shù)據(jù)類型和String相加結(jié)果一定是字符串型B.char類型和int類型相加結(jié)果一定是字符C.double類型可以自動轉(zhuǎn)換成intD.char+int+double+“”結(jié)果一定是double參考答案:A2、在Java中,構(gòu)造方法何時被調(diào)用?()A.類定義時B.創(chuàng)建對象時C.調(diào)用對象方法時D.使用對象變量時參考答案:B3、執(zhí)行下面Java代碼結(jié)果是()for(inti=0;;){System.out.println(“這是”+i);break;}A.語法錯誤,缺少表達式2和表達式3B.輸出:這是0C.死循環(huán)D.程序什么都不輸出參考答案:B4、有如下Java程序段:inttotal=0;for(inti=0;i{if(i==1)continue;if(i==2)break;total+=i;}則執(zhí)行完該程序段后total的值為:()A.0B.1C.3D.6參考答案:A5、在C++中用()能夠?qū)崿F(xiàn)將參數(shù)值帶回。A.數(shù)組B.指針C.引用D.上述ABC都可參考答案:D6、以下php代碼的執(zhí)行結(jié)果為()。$num=”32php”+8;echo$num;?>A.32php8B.32phpC.40D.40php參考答案:A7、mysql_connect()與@mysql_connect()的區(qū)別是()A.@mysql_connect()不會忽略錯誤,將錯誤顯示到客戶端B.mysql_connect()不會忽略錯誤,將錯誤顯示到客戶端C.沒有區(qū)別D.功能不同的兩個函數(shù)參考答案:B8、在面向?qū)ο筌浖_發(fā)方法中,一個對象一般由()組成。A.名稱、消息、函數(shù)B.名稱、屬性、實例C.對象名、屬性、消息D.對象名、屬性、方法參考答案:D9、下面有兩個Java類的定義:classPerson{longid;Stringname;}classStudentextendsPerson{intscore;intgetScore(){returnscore;}}請問類Person和類Student的關(guān)系是()A.包含關(guān)系B.繼承關(guān)系C.關(guān)聯(lián)關(guān)系D.無關(guān)系,上述類定義有語法錯誤參考答案:B10、下面這段php代碼的執(zhí)行結(jié)果為()$arr=array(3,2,5,4);functionmanageArr($arr){$n=count($arr);for($i=0;$ifor($j=$i+1;$jif($arr[$j]$temp=$arr[$i];$arr[$i]=$arr[$j];$arr[$j]=$temp;}}}return$arr;}$arr=manageArr($arr);var_dump($arr);?>A.array(4){[0]=>int(3)[1]=>int(2)[2]=>int(5)[3]=>int(4)}B.array(4){[0]=>int(4)[1]=>int(3)[2]=>int(2)[3]=>int(5)}C.array(4){[0]=>int(5)[1]=>int(3)[2]=>int(4)[3]=>int(2)}D.array(4){[0]=>int(2)[1]=>int(3)[2]=>int(4)[3]=>int(5)}參考答案:D解析:php版本的冒泡排序11、結(jié)構(gòu)化程序設(shè)計所規(guī)定的三種基本控制結(jié)構(gòu)是?()A.輸入、處理、輸出B.順序、選擇、循環(huán)C.樹形、網(wǎng)形、環(huán)形D.主程序、子程序、函數(shù)參考答案:B12、PHP中向數(shù)組頭部插入元素使用()函數(shù)。A.array_push()B.array_pop()C.array_shift()D.array_unshift()參考答案:D解析:array_push向數(shù)組尾部插入元素,array_unshift()向數(shù)組頭部插入元素。13、#defineF(x,y)(x)*(y)main(){inta=3,b=4;printf(“%d\n”,F(a++,b++));}程序運行后的輸出結(jié)果是()A.12B.15C.16D.20參考答案:A14、mysql_affected_rows對哪個操作沒有影響?()A.deleteB.updateC.selectD.Insert參考答案:C15、若要刪除數(shù)據(jù)庫中已經(jīng)存在的表T,需要用()。A.DELETETABLETB.DELETETC.DROPTABLETD.DROPT參考答案:C16、PHP中下面哪個函數(shù)可以打開文件或者URL?()A.()B.forpen()C.open_file()D.fget()參考答案:B解析:PHPfopen()函數(shù)可用于打開文件或者URL。17、給出下面Java代碼,關(guān)于該程序以下哪個說法是正確的?()publicclassPerson{staticintarr[]=newint[5];publicstaticvoidmain(Stringa[]){System.out.println(arr[0]);}}A.編譯時將產(chǎn)生錯誤B.編譯時正確,運行時將產(chǎn)生錯誤C.輸出零D.輸出空參考答案:C18、下列說法正確的是()。A.class中的constructor不可省略B.constructor必須與class同名,但方法不能與class同名C.constructor在一個對象被new時執(zhí)行D.一個class只能定義一個constructor參考答案:C“constructor必須與class同名,但方法不能與class同名”這句話是錯誤的,方法是可以和class同名的;方法可以和類名同名的,和構(gòu)造方法唯一的區(qū)別就是,構(gòu)造方法沒有返回值。19、分析選項中關(guān)于Java中this關(guān)鍵字的說法正確的是()。A.this關(guān)鍵字是在對象內(nèi)部指代自身的引用B.this關(guān)鍵字可以在類中的任何位置使用C.this關(guān)鍵字和類關(guān)聯(lián),而不是和特定的對象關(guān)聯(lián)D.同一個類的不同對象共用一個this參考答案:A20、Java編程所必須的默認(rèn)引用包是()。A.java.sys包B.java.lang包C.java.new包D.以上都不是參考答案:B二、編程題1.試題描述:小明喜歡在火車旅行的時候用手機聽音樂,他有N首歌在手機里,在整個火車途中,他可以聽P首歌,所以他想產(chǎn)生一個播放表產(chǎn)生P首歌曲,這個播放表的原則是:(1)每首歌都要至少被播放一次(2)在兩首一樣的歌中間,至少有N首其他的歌小明想有多少種不同的播放表可以產(chǎn)生,那么給你N、M、P,你來算一下,輸出結(jié)果取1000000007的余數(shù)。輸入:輸入N、M、PN的范圍1到100M的范圍0到NP的范圍在N到100輸出:輸出結(jié)果mod1000000007的余數(shù)輸入示例:103輸出示例:12.玥玥帶喬喬一起逃亡,現(xiàn)在有許多的東西要放到喬喬的包里面,但是包的大小有限,所以我們只能夠在里面放入非常重要的物品?,F(xiàn)在給出該種物品的數(shù)量、體積、價值的數(shù)值,希望你能夠算出怎樣能使背包的價值最大的組合方式,并且輸出這個數(shù)值,喬喬會非常感謝你。對于30%的數(shù)據(jù)11輸入第1行有2個整數(shù),物品種數(shù)n和背包裝載體積v;第2行到i+1行每行3個整數(shù),為第i種物品的數(shù)量m、體積w、價值s。輸出僅包含一個整數(shù),即為能拿到的最大的物品價值總和。樣例說明:選第一種一個,第二種兩個,結(jié)果為3x1+5x2=13。輸入示例:210343225輸出示例:133.小明有n(1≤2000)個美味的食物,他想賣掉它們來賺錢。這些食物放在一些箱子里,它們有些有趣的特性:(1)這些食物被編號1~n,每一天小明可以從這排箱子的頭部或者尾部取出食物去賣;(2)這些食物放的越久,年齡越大,價值越大,食物i有一個初始的價值V(i);(3)放了a天后,年齡為a,食物最終價值為V(i)xa。給定每一個食物的初始價值V(i),請求出小明賣掉它們后可以獲得的最大價值,第一天出售的食物年齡為1,此后每增加一天食物的年齡就加1。提示:樣例說明:小明出售這些食物(初始價值1,3,1,5,2)的順序為:第一天賣掉1個,第二天賣掉5個,第三天賣掉2個,第四天賣掉3個,第五天賣掉4個,獲得最大的價值1x1+2x3+3x3+4x1+5x5=43。輸入第1行:一個整數(shù)n;第i+l行:每行食物i的初始價值V(i)。輸出1行:小明最終可以獲得的最大價值。輸入示例:513152輸出示例:432018freewheeljava秋招試題一、問答題方向選擇:請選出以下你所中意的方向并做出排序()

A.分布式高性能視頻廣告投放引擎(C++/Go)

B.大數(shù)據(jù)基礎(chǔ)架構(gòu)及數(shù)據(jù)產(chǎn)品(Go,Hadoop,AWS)

C.廣告投放和流量預(yù)測及策略優(yōu)化(C++/Go)

D.機器學(xué)習(xí),算法(只考慮機器學(xué)習(xí)算法的同學(xué)請標(biāo)明)

E.核心業(yè)務(wù)系統(tǒng)開發(fā)(基于Web前端的全棧開發(fā),Ruby,Go,Javascript)

F.產(chǎn)品運維/運維開發(fā)二、不定項選擇題1、對某二叉樹進行先序遍歷的結(jié)果為ABDEFC,中序遍歷的結(jié)果為DBEFAC,則后序遍歷的結(jié)果是()

A.BDEFAC

B.DFEBCA

C.BDFECA

D.DBFEAC參考答案:B2、在關(guān)系型數(shù)據(jù)庫中,只有滿足聯(lián)接條件的記錄才包含在查詢結(jié)果中,這種聯(lián)接為()

A.右聯(lián)接

B.完全聯(lián)接

C.內(nèi)部聯(lián)接

D.左聯(lián)接參考答案:C3、在關(guān)系型數(shù)據(jù)庫中,適合建立索引的字段有()

A.主鍵字段

B.在WHERE句中的字段

C.外鍵字段

D.在SELECT句中的字段參考答案:A、B、C4、TCP擁塞控制算法中,發(fā)送方在檢測網(wǎng)絡(luò)擁塞情況時,對發(fā)送速率的控制方式是()

A.乘性增,乘性減

B.乘性增,加性減

C.加性增,加性減

D.加性增,乘性減參考答案:D5、下列哪個IP不是用于內(nèi)部網(wǎng)絡(luò)的?()

A.

B.5

C.6

D.參考答案:C三、填空題1、設(shè)哈夫曼樹***有99個結(jié)點,則該樹中有()個葉子結(jié)點;若采用二叉鏈表作為存儲結(jié)構(gòu),則該樹中有()個空指針域。參考答案:501002、初始序列為18625473一組數(shù)采用堆排序,當(dāng)建堆(小根堆)完畢時,堆所對應(yīng)的二叉樹中序遍歷序列為()參考答案:83251647四、問答題1、有一關(guān)鍵字序列(265,301,751,129,937,863,742,694,076,438),寫出希爾排序的第二趟排序結(jié)果。(取增量為5,3,1)。

答:

初始狀態(tài):265301751129937863742694076438

第一趟:265301694076438863742751129937

第二趟:076301129265438694742751863937第三趟:0761292653014386947427518639372、由用戶態(tài)切換到內(nèi)核態(tài),是否切換了進程?為什么?

答:沒有切換進程。

因為操作系統(tǒng)的很多操作會消耗系統(tǒng)的物理資源,例如創(chuàng)建一個新進程時,要做很多底層的細(xì)致工作,如分配物理內(nèi)存,從父進程拷貝相關(guān)信息,拷貝設(shè)置頁目錄、頁表等,這些操作顯然不能隨便讓任何程序都可以做,于是就產(chǎn)生了特權(quán)級別的概念,與系統(tǒng)相關(guān)的一些特別關(guān)鍵性的操作必須由高級別的程序來完成,這樣可以做到集中管理,減少有限資源的訪問和使用沖突。Intel的X86架構(gòu)的CPU提供了0到3四個特權(quán)級,而在我們Linux操作系統(tǒng)中則主要采用了0和3兩個特權(quán)級,也就是我們通常所說的內(nèi)核態(tài)和用戶態(tài)。

運行于用戶態(tài)的進程可以執(zhí)行的操作和訪問的資源都受到極大的限制,而運行于內(nèi)核態(tài)的進程則可以執(zhí)行任何操作并且在資源的使用上也沒有限制。很多程序開始時運行于用戶態(tài),但在執(zhí)行的過程中,一些操作需要在內(nèi)核權(quán)限下才能執(zhí)行,這就涉及到一個從用戶態(tài)切換到內(nèi)核態(tài)的過程。本文主要要介紹的就是這個過程。

這里再明確一個概念,每個進程都有一個4G大小的虛擬地址空間,在這個4G大小的虛擬地址空間中,前0~3G為用戶空間,每個進程的用戶空間之間是相互獨立的,互不相干。而3G~4G為內(nèi)核空間,因為每個進程都可以從用戶態(tài)切換到內(nèi)核態(tài),因此,內(nèi)核空間對于所有進程來說,可以說是共享的,不過這么說有些不太嚴(yán)謹(jǐn),應(yīng)該說內(nèi)核空間中大部分區(qū)域?qū)τ谒械倪M程來說都是共享的,這不共享的小部分區(qū)域是存儲所有進程內(nèi)核棧的區(qū)域,為什么這么說,因為每個進程都存在一個內(nèi)核棧,而各個進程的內(nèi)核棧之間一定是不共享的。3、mmap是系統(tǒng)共享內(nèi)存中的一個概念或者調(diào)用。兩個進程可以共享一段內(nèi)存,當(dāng)一個進程在這段空間里面寫內(nèi)容時,另外一個進程也會發(fā)現(xiàn),這塊空間的內(nèi)容變了。請問:當(dāng)兩個進程共享內(nèi)存時,各自進程中虛擬內(nèi)存頁面以及實際物理頁面之間的關(guān)系是什么?

答:當(dāng)兩個進程共享內(nèi)存時,各自進程中虛擬內(nèi)存頁面是內(nèi)存中一塊專門的用于共享的內(nèi)存區(qū)域(實際物理頁面)的映射,也就是說操作各自進程的虛擬內(nèi)存相當(dāng)于直接操作所映射的物理內(nèi)存頁。4、請嘗試優(yōu)化以下冒泡排序?qū)崿F(xiàn)以減少執(zhí)行時間?defbubble_sort(array)cur_len=array.length-1whilecur_len>0idx=0whileidx<cur_lenifarray[idx]>array[idx+1]array.swap!(idx,idx+1)endidx+=1endendend1cur_len-=1答:12345678910111213141516defbubble_sort(array)cur_len=array.length-1flag=1whilecur_len>0andflag==1idx=0flag=0whileidx<cur_lenflag=1ifarray[idx]>array[idx+1]array.swap!(idx,idx+1)endidx+=1endcur_len-=1endend5、請補充以下代碼,完成對一棵樹的最小高度的求解?defmin_depth_recursive(root)ifroot==nilreturn0endmin_depth=-1left_child_min=min_depth_recursive(root.left)right_child_min=min_depth_recursive(root.right)end1returnmin_depth答:12345678910defmin_depth_recursive(root)ifroot==nilreturn0endmin_depth=-1left_child_min=min_depth_recursive(root.left)right_child_min=min_depth_recursive(root.right)min_depth=left_child_min<right_child_min?left_child_min+1:right_child_min+1returnmin_depthend6、一個人有一瓶藥,共100顆。每天,這個人都需要吃半片這種藥。這個人的做法是,每次從藥瓶里隨機取一顆,如果是完整的一片,那么分成兩半,服用半片,另外半片放回瓶中。如果正好是半片,那么直接服用。假定不管是整片還是半片,藥片被抓取的概率都是相同的。試寫程序去模擬這200天的服藥過程。實例輸出:

Day1:Pill#5

Day2:Pill#8

Day3:Pill#5

……

Day200:Pill#40

附加問題:

哪一天最有可能第一次碰到半片的藥?

(編程題)略7、求一個MN的矩陣的最大子矩陣和。請用自然語言描述算法思想,并寫出代碼。

intmax_sum(int**matrix,intm,intn)intmax_sum(int**matrix,intm,intn)

題目:求一個MN的矩陣的最大子矩陣和。

比如在如下這個矩陣中:

0-2-70

92-62

-41-41

-180-2

擁有最大和的子矩陣為:

92

-41

-18

其和為15。/參考答案:123456789101112131415161718192021222324252627282930313233343536373839404142434445464748include<cstdlib>include<iostream>intmaxSubArray(int*array,intlen){if(array==NULL||len<1)return-1;intmax=-10000;intb=0;for(inti=0;i<len;++i){if(b>0){b+=array[i];}else{b=array[i];}if(b>max)max=b;}returnmax;}intmaxSubMatrix(intmatrix[][4],introwlen,intcollen){if(matrix==NULL||rowlen<1||collen<1)return-1;intmax=-10000;intarray[collen];for(inti=0;i<rowlen;++i){for(intj=0;j<collen;++j){//initarrayto0array[j]=0;}for(intj=i;j<rowlen;++j){//fromrowitorowjfor(intk=0;k<collen;++k){array[k]+=matrix[j][k];}intmaxarray=maxSubArray(array,collen);if(maxarray>max)max=maxarray;}}returnmax;}intmain(intargc,char*argv){intmatrix[][4]={{0,-2,-7,0},{9,2,-6,2},{-4,1,-4,1},{-1,8,0,-2}};intcollen=sizeof(matrix)/sizeof(matrix[0]);introwlen=sizeof(matrix)/(sizeof(collen)intmatrix[][4]={{0,-2,-7,0},{9,2,-6,2},{-4,1,-4,1},{-1,8,0,-2}};intcollen=sizeof(matrix)/sizeof(matrix[0]);introwlen=sizeof(matrix)/(sizeof(collen)sizeof(int));//std::cout<<"rowlen:"<<rowlen<<"collen:"<<collen<<std::endl;intmax=maxSubMatrix(matrix,rowlen,collen);std::cout<<"max:"<<max<<std::endl;system("pause");return0;}8、廣告系統(tǒng)中廣告主都希望盡量少的預(yù)算覆蓋足夠的目標(biāo)人群,假設(shè):共有N類目標(biāo)人群Un,0≤n<N給定M支廣告Am,0≤m<M對應(yīng)廣告的單次投放成本Pm,0≤m<M

*已知廣告Ai,單次投放能夠到達的目標(biāo)人群Ui的人數(shù)為Ri,j

請描述并實現(xiàn)算法,滿足(或證明無法滿足):1.每類目標(biāo)人群Uj被覆蓋的人數(shù)大于等于閾值Sj2.最小化總體廣告投放預(yù)算3.如果有解,輸出每支廣告的投放次數(shù)和總體投放預(yù)算;如果無解,輸出“無解”

請按照如下順序作答:

1.寫出最小成本的公式

2.對約束條件建模

3.試計算下列用例

a.廣告主希望用2支廣告:

i.廣告1(單價13元)

ii.廣告2(單價23元)

覆蓋3類目標(biāo)人群:

i.“青年觀眾”490人

ii.“中年觀眾”1220

iii.“老年觀眾”160人

b.單次廣告投放能夠覆蓋的人群數(shù)量如下:青年中年老年廣告15人35人4人廣告215人20人4人4.用你熟悉的語言或偽代碼描述算法2018科大訊飛java秋招試題一、單選題1、下列關(guān)于繼承的描述錯誤的是()A.在Java中允許定義一個父類的引用,指向子類對象B.在Java中繼承是通過extends關(guān)鍵字來描述的,而且只允許繼承自一個直接父類C.在Java中抽象類之間也允許出現(xiàn)繼承關(guān)系D.在Java中一個子類可以繼承多個抽象類,在extends關(guān)鍵字后一次列出,用逗號隔開參考答案:D語法層面上抽象類和接口的區(qū)別1)抽象類可以提供成員方法的實現(xiàn)細(xì)節(jié),而接口中只能存在publicabstract方法;2)抽象類中的成員變量可以是各種類型的,而接口中的成員變量只能是publicstaticfinal類型的;3)接口中不能含有靜態(tài)代碼塊以及靜態(tài)方法,而抽象類可以有靜態(tài)代碼塊和靜態(tài)方法;4)一個類只能繼承一個抽象類,而一個類卻可以實現(xiàn)多個接口。2、以下關(guān)于接口的說法錯誤的是()A.接口中的成員變量和成員方法只能是Public(或者缺省不寫)B.Java中的接口(interface)也繼承了Object類C.實現(xiàn)接口的類必須全部實現(xiàn)接口中的方法D.接口中的方法只能有方法原型,不能有方法主體參考答案:B3、在一個請求分頁系統(tǒng)中,采用NUR頁面置換算法時,假如一個作業(yè)的頁面走向為1,2,1,5,4,2,4,3,2,4。當(dāng)分配給該作業(yè)的物理塊數(shù)為3時,訪問過程中命中的次數(shù)為()A.3B.4C.5D.6參考答案:B主要的頁面置換算法有:OPT、LRU、LFU、NUR以及FIFO。FIFO:先進先出算法。OPT:最佳置換算法。LRU:最近最久未使用算法。LFU:最近最少使用算法。NUR:最近未使用算法。4、下列程序的執(zhí)行結(jié)果是()PublicclassTest

{Publicstaticvoidmain(String[]args){Stytem.out.prinln(““+‘b’+1);}}A.99B.981C.198D.b1參考答案:D5、TCP套接字函數(shù)中()不會產(chǎn)生阻塞。A.acceptB.bindC.writeD.Read參考答案:B6、下面關(guān)于二叉排序樹的說法錯誤的是()A.在二叉排序樹中,完全二叉樹的查找效率最低B.對二叉排序樹進行中序遍歷,必定得到節(jié)點關(guān)鍵字的有序序列C.二叉排序樹的平均查找長度是O(log2n)D.二叉排序樹的查找效率與二叉樹的樹形有關(guān)參考答案:A解析:在二叉排序樹中,完全二叉樹的查找效率最高7、多線程與多進程的主要區(qū)別之一就是共享資源,多線程是通過互斥訪問來協(xié)調(diào)共享資源,在Windows系統(tǒng)中使用什么對象使多線程之間對資源互斥訪問()A.SysTheradB.InitTheradC.MutexD.Select參考答案:C8、在FTP服務(wù)器上FTP主進程打開的端口為()A.23B.20C.21D.22參考答案:C9、咖啡店銷售系統(tǒng)具體需求為:咖啡店店員在賣咖啡時,可以根據(jù)顧客的要求加入各種配料,并根據(jù)加入配料價格的不同來計算總價。若要設(shè)計該系統(tǒng)可以應(yīng)該采用()進行設(shè)計A.裝飾模式B.單例模式C.原型模式D.組合模式參考答案:A10、下列程序的執(zhí)行結(jié)果是()intnum=17;while(num>0){System.out.print(num++%5+“\t”);num/=5;}A.24B.34C.2D.23參考答案:D11

溫馨提示

  • 1. 本站所有資源如無特殊說明,都需要本地電腦安裝OFFICE2007和PDF閱讀器。圖紙軟件為CAD,CAXA,PROE,UG,SolidWorks等.壓縮文件請下載最新的WinRAR軟件解壓。
  • 2. 本站的文檔不包含任何第三方提供的附件圖紙等,如果需要附件,請聯(lián)系上傳者。文件的所有權(quán)益歸上傳用戶所有。
  • 3. 本站RAR壓縮包中若帶圖紙,網(wǎng)頁內(nèi)容里面會有圖紙預(yù)覽,若沒有圖紙預(yù)覽就沒有圖紙。
  • 4. 未經(jīng)權(quán)益所有人同意不得將文件中的內(nèi)容挪作商業(yè)或盈利用途。
  • 5. 人人文庫網(wǎng)僅提供信息存儲空間,僅對用戶上傳內(nèi)容的表現(xiàn)方式做保護處理,對用戶上傳分享的文檔內(nèi)容本身不做任何修改或編輯,并不能對任何下載內(nèi)容負(fù)責(zé)。
  • 6. 下載文件中如有侵權(quán)或不適當(dāng)內(nèi)容,請與我們聯(lián)系,我們立即糾正。
  • 7. 本站不保證下載資源的準(zhǔn)確性、安全性和完整性, 同時也不承擔(dān)用戶因使用這些下載資源對自己和他人造成任何形式的傷害或損失。

評論

0/150

提交評論