2022年京東技術(shù)類(程序員)面試題(應(yīng)聘 求職 面試準(zhǔn)備資料)_第1頁(yè)
2022年京東技術(shù)類(程序員)面試題(應(yīng)聘 求職 面試準(zhǔn)備資料)_第2頁(yè)
2022年京東技術(shù)類(程序員)面試題(應(yīng)聘 求職 面試準(zhǔn)備資料)_第3頁(yè)
2022年京東技術(shù)類(程序員)面試題(應(yīng)聘 求職 面試準(zhǔn)備資料)_第4頁(yè)
2022年京東技術(shù)類(程序員)面試題(應(yīng)聘 求職 面試準(zhǔn)備資料)_第5頁(yè)
已閱讀5頁(yè),還剩15頁(yè)未讀 繼續(xù)免費(fèi)閱讀

下載本文檔

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

文檔簡(jiǎn)介

2022年京東技術(shù)類(程序員)面試題

第1題:

一、不定項(xiàng)選擇題

1、關(guān)于HTTP協(xié)議的說(shuō)法,以下哪些說(shuō)法是不正確的()?

A、有狀態(tài),前后懇求有關(guān)聯(lián)關(guān)系

B、FTP也可以使用HTTP協(xié)議

C、HTTP響應(yīng)包括數(shù)字狀態(tài)碼,200代表此次懇求有正確返回

D、HTTP和TCP,UDP在網(wǎng)絡(luò)分層里是同一層次的協(xié)議

答案:ABD

解析:

A:Http是無(wú)狀態(tài)的協(xié)議

B:FTP有兩個(gè)端口,并且應(yīng)用場(chǎng)景不一樣,協(xié)議的標(biāo)準(zhǔn)自然不一

D:HTTP是應(yīng)用層的協(xié)議,而TCP/UDP是傳輸層的協(xié)議

第2題:

二、單選題

2、以下代碼運(yùn)行結(jié)果為()

#includestdio.h

intmain()

uint32_ta=100;

while(a0)

(

-a;

}

printf("%d",a);

return0;

}

A、-1

B、100

C、0

D、死循環(huán)

答案:C

解析:Unsignedint型數(shù)字最小為0,因此不是死循環(huán),a到0就跳

出循環(huán),最終輸出0

第3題:

-2-

3、以下哪種排序算法需要開(kāi)拓額外的存儲(chǔ)空間()

A、選擇排序

B、歸并排序

C、快速排序

D、堆排序

答案:B

解析:歸并算法基本操作是合并兩個(gè)已經(jīng)排序的表,由于這兩個(gè)表

是已經(jīng)排序的,所以若將輸出放到第三個(gè)表中則該算法可以通過(guò)對(duì)輸

入數(shù)據(jù)一趟排序來(lái)完成,因此是需要額外存儲(chǔ)空間的

第4題:

4、假如將固定塊大小的文件系統(tǒng)中的塊大小設(shè)置大一些,會(huì)造成

()o

A、更好的磁盤吞吐量和更差的磁盤空間利用率

B、更好的磁盤吞吐量和更好的磁盤空間利用率

C、更差的磁盤吞吐量和更好的磁盤空間利用率

D、更差的磁盤吞吐量和更差的磁盤空間利用率

答案:A

-3-

解析:使用多大的塊大小,需要依據(jù)你的系統(tǒng)綜合考慮,假如系統(tǒng)用

作郵件或者新聞服務(wù)器,使用較大的塊大小,雖然性能有所提高,但

會(huì)造成磁盤空間較大的鋪張。比如文件系統(tǒng)中的文件平均大小為

2145byte,假如使用4096byte的塊大小,平均每一個(gè)文件就會(huì)鋪張

1951byte空間。假如使用1024byte的塊大小,平均每一個(gè)文件會(huì)鋪

張927byte空間。

第5題:

5、若一顆二叉樹(shù)的前序遍歷為a,e,b,d,c,后序遍歷為b,c,d,e,a,則根

節(jié)點(diǎn)的孩子節(jié)點(diǎn)()

A、只有e

B、有e,b

C、有e,c

D、不確定

答案:A

解題思路:由先序遍歷第一個(gè)結(jié)點(diǎn)為則可知道樹(shù)的根節(jié)點(diǎn)為

a,ao

后序遍歷序列中根節(jié)點(diǎn)會(huì)把序列分為左右兩段,左段為左子樹(shù)上結(jié)點(diǎn),

右段為右子樹(shù)上結(jié)點(diǎn),所以由后序遍歷序列可知b,c,d,e均為a結(jié)點(diǎn)

的左子樹(shù)上的點(diǎn),a不存在右子樹(shù)。再由先序遍歷序列知道e為根結(jié)

點(diǎn)a的左孩子結(jié)點(diǎn)。即根節(jié)點(diǎn)的孩子結(jié)點(diǎn)只有e,且為左孩子。

-4-

第6題:

6、在一個(gè)世世代代都重男輕女的村莊里,村長(zhǎng)打算頒布一條法律,

村子里沒(méi)有生育出兒子的夫妻可以始終生育直到生出兒子為止,假設(shè)

現(xiàn)在村子上的男女比例是1:1,這條法律頒布之后的若干年后村子的

男女比例將會(huì)()

A、男的多

B、女的多

C、一樣多

D、不能確定

答案:B

解析:

用概率論中的期望來(lái)解這道題目。

假設(shè)生男生女的比例是0.505,即一樣。

那么一對(duì)夫妻,他們生的孩子是男孩的期望為

E(男孩)=1*0.5+1*0.52+。o。+l*0.5n=l-0.5no

上面的公式說(shuō)明的是一對(duì)夫妻,第一次生到男孩的概率是05假

如第一次生不到男孩,則其次次生男孩的概率為0.52,.…則第n次才

生到男孩的概率是0.5n

當(dāng)n-》無(wú)窮大時(shí),E(男孩)=1,即一對(duì)夫妻生男孩的期望數(shù)是1個(gè),

-5-

這和我們想的一樣,由于無(wú)論怎么生,生到1個(gè)男孩就停止,沒(méi)有生

到就連續(xù)生下去,無(wú)論如何,也只有一個(gè)男孩。

接下來(lái),分析一下他們生女孩的期望數(shù)

E(女

^)=0*0.5+l*0.5+(l*0.5+0.52)+...+(l*0.5+0.52+...+0.5n-l)=(n-l)*0.5+(n-

2)*0.52...0.5n-l=n*0.5-l+0.5no

所以,上面的公式說(shuō)明一對(duì)夫妻,第一次生到男孩,則生女孩數(shù)為

0,其次次才生到男孩,則此時(shí)有1個(gè)女孩,這種生法概率為0.5,。。。

則第n次才生到男孩,則此時(shí)已有n-1個(gè)女孩,這種生法的概率為

(l*0,5+0.52+...+0.5n-l),要是連續(xù)沒(méi)有生到男孩,那他們會(huì)始終生下

去,即當(dāng)n-》無(wú)窮大時(shí),E(女孩)=n=無(wú)窮大。所以,假如始終沒(méi)有生

到男孩子,則女孩會(huì)越來(lái)越多。

所以,一對(duì)夫妻他們生的男孩:女孩的比例約為1:n(n為自然數(shù))。

可以知道,只有當(dāng)nl時(shí),女孩比例才會(huì)比男孩小。

不過(guò)我們可以發(fā)覺(jué)在數(shù)軸上,(0,1)區(qū)間要比(1,無(wú)窮)區(qū)間的

長(zhǎng)度小得多,這說(shuō)明nl的概率要大于nl的概率。所以一對(duì)夫妻生女

孩數(shù)大于男孩數(shù)的概率要比生男孩數(shù)大于女孩數(shù)的概率大。

那么對(duì)于村里m對(duì)夫妻的狀況,當(dāng)m足夠大的時(shí)候,依據(jù)大數(shù)定

律,這樣的狀況更明顯,即夫妻生女孩數(shù)大于男孩數(shù)的概率要比生

男孩數(shù)大于女孩數(shù)的概率大。

所以,根據(jù)這種規(guī)定,之后男女比例會(huì)失調(diào),女孩會(huì)比男孩多。

這也和重男輕女造成的結(jié)果相互吻合。

-6-

第7題:

7、批處理操作系統(tǒng)的目的是()。

A、提高系統(tǒng)資源利用率

B、提高系統(tǒng)與用戶的交互性能

C、削減用戶作業(yè)的等待時(shí)間

D、降低用戶作業(yè)的周轉(zhuǎn)時(shí)間

答案:A

解析:批處理操作系統(tǒng)不具有交互性,它是為了提高CPU的利用

率而提出的一種操作系統(tǒng)。

第8題:

8、設(shè)有一個(gè)關(guān)系:DEPT(DNO,DNAME),假如要找出倒數(shù)第三個(gè)字母

為W,并且至少包含4個(gè)字母的DNAME,則查詢條件子句應(yīng)寫成

WHEREDNAMELIKE()

A、'_W_%'

B、

C、'_w_'

D、'_W_%'

答案:B

解析:在SQL語(yǔ)言中,我們可以使用兩個(gè)通配符:%和一,其中"%"

表示0個(gè)或多個(gè)字符,而“二'則表示一個(gè)字符。在本題的查找條件中,

要求倒數(shù)第三個(gè)字母為W,應(yīng)表示成并且還要求至少包含4

個(gè)字母,而當(dāng)以"%”開(kāi)頭時(shí),它表示的字符可以不存在,所以開(kāi)頭應(yīng)

加一個(gè)那么查詢條件子句應(yīng)寫成WHEREDNAMELIKE1%W__、

第9題:

9、已知的一個(gè)無(wú)向圖(邊為正數(shù))中頂點(diǎn)A,B的一條最短路P,假

如把各個(gè)邊的權(quán)重(即相鄰兩個(gè)頂點(diǎn)的距離)變?yōu)樵瓉?lái)的2倍,那么

在新圖中,P仍舊是A,B之間的最短路,以上說(shuō)法是()

A、錯(cuò)誤

B、正確

答案:B

第10題:

10、如下程序的時(shí)間簡(jiǎn)單度為(其中ml,e0)()

-8-

x=m;

y=1;

while(x-ye)

(

x=(x+y)/2;

y=m/x;

)

print(x);

A、logm

B、m的平方

C、m的1/2方

D、m的1/3方

答案:A

解析:

算法的時(shí)間簡(jiǎn)單度0(n),在n比較小的時(shí)候,規(guī)律不明顯。想象

一下,logX,Xl/2,Xl/3函數(shù)的曲線,在x比較小時(shí)區(qū)分不大。但是當(dāng)x

比較大時(shí)差別比較明顯。

所以我們?cè)谌l,eO時(shí)一,不妨將m取較大數(shù),e取較小數(shù)(當(dāng)m較

大時(shí)e相當(dāng)于0)。然后看函數(shù)內(nèi)部執(zhí)行。

-9-

x=m,y=l;

x-yO;

l.x=(x+y)/2=(m+l)/2m特別大,則x=m/2;

y=m/x,x=m/2貝!Jy=2;

2.x=(x+y)/2=(m/2+2)/2=m/4+lm特別大,貝!Jx=m/4;

y=m/x,x=m/4貝!Jy=4;

3.x=(x+y)/2=(m/4+4)/2=m/8+2m特另大,貝!Jx=m/8;

y=m/x,x=m/8貝!Jy=8;

x=m/2n,y=2n

當(dāng)x-y=m/2n-2n=0時(shí)m/2n-2n=0m=22n=

n=(logm)/2

第11題:

11、求fun(484)的返回值()

boolfun(intn){

intsum=0;

for(inti=l;nsum;i=i+2)

sum=sum+i;

—io—

return(n==sum);

}

A、True

B、False

答案:A

解析:

loop1:sum=l,i=3

loop2:sum=4,i=5

loop3:sum=9,i=7

loop4:sum=16J=9

loop5:sum=25J=ll

loop6:sum=36J=13

loop7:sum=49J=15

通過(guò)規(guī)律可以發(fā)覺(jué)sum的值為循環(huán)次數(shù)的平方,22*22=484,循環(huán)退

出時(shí)sum=484,函數(shù)返回true。

第12題:

12、關(guān)于主對(duì)角線(從左上角到右下角)對(duì)稱的矩陣為對(duì)稱矩陣;

11

假如一個(gè)矩陣中的各個(gè)元素取值為?;?,那么該矩陣為01矩陣,

求大小為N*N的01對(duì)稱矩陣的個(gè)數(shù)?()

A、power⑵n)

B、power(2,n*n/2)

C、power(2,(n*n+n)/2)

D、power(2,(n*n-n)/2)

答案:C

解析:

對(duì)稱矩陣由它的上三角矩陣唯一確定。

只要它主對(duì)角線和主對(duì)角線右上方的元素都確定了。主對(duì)角線左下

方的元素依據(jù)對(duì)稱的原則便可確定。

因此需要確定n*(n+l)/2個(gè)元素

第13題:

13、現(xiàn)代的語(yǔ)言(如Java)的編譯器的詞法分析主要依靠()。

A、有限狀態(tài)自動(dòng)機(jī)

B、確定下推自動(dòng)機(jī)

C、非確定下推自動(dòng)機(jī)

D、圖靈機(jī)

-12-

答案:A

解析:詞法分析階段是編譯過(guò)程的第一個(gè)階段。這個(gè)階段的任務(wù)是

從左到右一個(gè)字符一個(gè)字符地讀入源程序,即對(duì)構(gòu)成源程序的字符流

進(jìn)行掃描然后依據(jù)構(gòu)詞規(guī)章識(shí)別單詞(也稱單詞符號(hào)或符號(hào))。

第14題:

14、如下函數(shù)的f⑴的值為()

intf(intn){

staticinti=l;

if(n=5)

returnn;

n=n+i;

i++;

returnf(n);

)

A、5

B、6

C、7

D、8

-13-

答案:c

解析:該函數(shù)為遞歸調(diào)用。

f(l):n=2;i=2;調(diào)用f⑵

f(2):n=4;i=3;調(diào)用f⑷

f(4):n=7;i=4;調(diào)用f⑺

f(7):返回7

即最終函數(shù)返回結(jié)果為7

第15題:

二、填空題

15、123456789101112…2022除以9的余數(shù)是()

答案:1

分析:這個(gè)大數(shù)可分解為1*10n+2*10r)-l+...+2022*100(①

式)。而10m-1(m為自然數(shù))都可以被9整除。將①式減掉1

*9999...9(共n-1個(gè)9)+2*9999...9(共n-2個(gè)9)...+2022*9之

后余數(shù)不變。這問(wèn)題轉(zhuǎn)化為求1+2+...+2022的余數(shù),1始終加到

2022的和為(1+2022)*2022/2=2029105,2029105MOD9=1。所以

余數(shù)為lo

-14-

第16題:

三、解答題

16、給定字符串(ASCII碼0-255)數(shù)組,請(qǐng)?jiān)诓婚_(kāi)拓額外空間的狀

況下刪除開(kāi)頭和結(jié)尾處的空格,并將中間的多個(gè)連續(xù)的空格合并成一

個(gè)。例如:"iamalittleboy.",變成"iamalittleboy",語(yǔ)言不

限,但不要用偽代碼作答,函數(shù)輸入輸出請(qǐng)參考如下的函數(shù)原型:

C++函數(shù)原型:

voidFormatString(charstr[],intlen){

}

答案:

char*removeEmpty(char*str,charch){

char*itl=str;

char*it2=str;

while(*it2!='\0'){

//while(*it2==ch){it2++;}

while(*it2==ch*(it2+1)==ch)

(

it2++;

}

-15-

*itl++=*it2++;

}

returnstr;

}

voidFormatString(charstr[],intlen){

str=removeEmpty(str/'');

)

第17題:

17、給定一顆二叉樹(shù),以及其中的兩個(gè)node(地址均非空),要求

給出這兩個(gè)node的一個(gè)公共父節(jié)點(diǎn),使得這個(gè)父節(jié)點(diǎn)與兩個(gè)節(jié)點(diǎn)的

路徑之和最小。描述你程序的最壞時(shí)間簡(jiǎn)單度,并實(shí)現(xiàn)詳細(xì)函數(shù),函

數(shù)輸入輸出請(qǐng)參考如下的函數(shù)原型:

C++函數(shù)原型:

strucyTreeNode{

TreeNode*left;〃指向左子樹(shù)

TreeNode*right;〃指向右子樹(shù)

TreeNode*father;〃指向父親節(jié)點(diǎn)

};

TreeNode*LowestCommonAncestor(TreeNode*first,TreeNode*

second){

}

—16—

答案:由于有父節(jié)點(diǎn)指針,這道題目的難度一下子就降低了很多。

思路一:我們首先找到兩個(gè)節(jié)點(diǎn)的高度差,然后從較靠近根結(jié)點(diǎn)的

一層開(kāi)頭向上找,若父節(jié)點(diǎn)為同一節(jié)點(diǎn)則該節(jié)點(diǎn)為解。

intgetHeight(TreeNode*node){

intheight=0;

while(node){

height++;

node=node-parent;

}

returnheight;

}

TreeNode*LowestCommonAncestor(TreeNode*first,TreeNode*

second){

intheightl=getHeight(first)zheight?=getHeight(second)/diff=

heightl-height2;

if(diff0){

diff=-diff;

while(diff-){

second=second-parent;

—17—

}

}else{

while(diff-){

溫馨提示

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

最新文檔

評(píng)論

0/150

提交評(píng)論