97超级碰碰碰久久久_精品成年人在线观看_精品国内女人视频免费观_福利一区二区久久

Java最新筆試題(附詳細(xì)答案

時(shí)間:2022-06-27 04:17:05 筆試 我要投稿
  • 相關(guān)推薦

2017年Java最新筆試題(附詳細(xì)答案)

  下述二叉樹(shù)中,哪一種滿足性質(zhì):從任一結(jié)點(diǎn)出發(fā)到根;本題主要考查了選項(xiàng)中出現(xiàn)的幾種樹(shù)的結(jié)構(gòu)特點(diǎn);下面關(guān)于線程的敘述中,正確的是();一條tcp連接,主動(dòng)關(guān)閉的一方不可能出現(xiàn)的連接狀;CLOSE_WAIT;FIN_WAIT2;TIME_WAIT;FIN_WAIT1;1)當(dāng)客戶端沒(méi)有主動(dòng)close的時(shí)候就斷開(kāi)連接,;1:這時(shí)候若客戶端斷開(kāi)的時(shí)候發(fā)送了FIN包,則服

2017年Java最新筆試題(附詳細(xì)答案)

  下述二叉樹(shù)中,哪一種滿足性質(zhì):從任一結(jié)點(diǎn)出發(fā)到根的路徑上所經(jīng)過(guò)的結(jié)點(diǎn)序列按其關(guān)鍵字有序():

  本題主要考查了選項(xiàng)中出現(xiàn)的幾種樹(shù)的結(jié)構(gòu)特點(diǎn)。對(duì)于選項(xiàng)A,根據(jù)二叉排序樹(shù)的結(jié)構(gòu)特點(diǎn)我們可以知道,二叉排序樹(shù)的中序遍歷結(jié)果是一個(gè)有序序列,而在中序遍歷中,父結(jié)點(diǎn)并不總是出現(xiàn)在孩子結(jié)點(diǎn)的前面(或后面),故該選項(xiàng)不正確。例如我們用關(guān)鍵字5,2,3建立一棵二叉排序樹(shù),則從結(jié)點(diǎn)3出發(fā)到根的路徑上所經(jīng)過(guò)的結(jié)點(diǎn)序列為3,2,5,并不是一個(gè)有序的序列。對(duì)于選項(xiàng)B,赫夫曼樹(shù)在后續(xù)的章節(jié)中會(huì)介紹,根據(jù)赫夫曼樹(shù)的結(jié)構(gòu)特點(diǎn)我們可以知道,在赫夫曼樹(shù)中所有的關(guān)鍵字只出現(xiàn)在葉結(jié)點(diǎn)上,其非葉結(jié)點(diǎn)上并沒(méi)有關(guān)鍵字值,顯然不正確。對(duì)于選項(xiàng)C,AVL樹(shù)其本質(zhì)上也是一種二叉排序樹(shù),只不過(guò)是平衡化之后的二叉排序樹(shù),故該選項(xiàng)也是不正確的。例如我們用序列5,1,8,6,9建立一棵AVL樹(shù),從結(jié)點(diǎn)6出發(fā)到根的路徑上所經(jīng)過(guò)的結(jié)點(diǎn)序列為6,8,5,也不是一個(gè)有序的序列。對(duì)于選項(xiàng)D,堆的概念我們會(huì)在堆排序中給大家介紹,根據(jù)建堆的過(guò)程,不斷地把大者"上浮",將小者"篩選"下去,最終得到的正是一個(gè)從任一結(jié)點(diǎn)出發(fā)到根的路徑上所經(jīng)過(guò)的結(jié)點(diǎn)序列按其關(guān)鍵字有序的樹(shù)狀結(jié)構(gòu),故D是正確的。 本題中的A和C同時(shí)出現(xiàn),沒(méi)有起到干擾的作用,因?yàn)锳VL樹(shù)和二叉排序樹(shù)只是在平衡性上有區(qū)別,在結(jié)點(diǎn)的排列方式上沒(méi)有區(qū)別。

  下面關(guān)于線程的敘述中,正確的是()。 正確答案: C 你的答案: D (錯(cuò)誤) 不論是系統(tǒng)支持線程還是用戶級(jí)線程,其切換都需要內(nèi)核的支持 線程是資源的分配單位,進(jìn)程是調(diào)度和分配的單位 不管系統(tǒng)中是否有線程,進(jìn)程都是擁有資源的獨(dú)立單位 在引入線程的系統(tǒng)中,進(jìn)程仍是資源分配和調(diào)度分派的基本單位 A:用戶級(jí)線程,切換時(shí)不需要內(nèi)核的支持 B:線程是資源調(diào)度和分配的單位,進(jìn)程是資源擁有的單位 C:對(duì) D:引入線程后,線程才是資源分配和調(diào)度分派的基本單位 在引入線程前,進(jìn)程的兩個(gè)基本屬性是:1.可擁有資源的獨(dú)立單位。2.可獨(dú)立調(diào)度和分配的基本單位。 后來(lái)為了使多個(gè)程序更好的并發(fā)執(zhí)行,人們把上述兩個(gè)屬性分開(kāi),引入線程作為可獨(dú)立調(diào)度和分配的基本單位。

  一條tcp連接,主動(dòng)關(guān)閉的一方不可能出現(xiàn)的連接狀態(tài)是() 正確答案: A 你的答案: A (正確)

  CLOSE_WAIT

  FIN_WAIT2

  TIME_WAIT

  FIN_WAIT1

  1)當(dāng)客戶端沒(méi)有主動(dòng)close的時(shí)候就斷開(kāi)連接,即客戶端發(fā)送的fin丟失或者失。

  1:這時(shí)候若客戶端斷開(kāi)的時(shí)候發(fā)送了FIN包,則服務(wù)端將會(huì)處于CLOSE_WAIT狀態(tài);2: 這時(shí)候若客戶端斷開(kāi)的時(shí)候未發(fā)送FIN包,則服務(wù)端處還是顯示ESTABLISHED狀態(tài)

  2) 當(dāng)client想要關(guān)閉它與server之間的連接。client(某個(gè)應(yīng)用進(jìn)程)首先調(diào)用 close 主動(dòng)關(guān)閉連接,這時(shí)TCP發(fā)送一個(gè)FIN M;client端處于 FIN_WAIT1 狀態(tài)。

  3) 當(dāng)server端接收到FIN M之后,執(zhí)行被動(dòng)關(guān)閉。對(duì)這個(gè)FIN進(jìn)行確認(rèn),返回給client ACK。當(dāng)server端返回給client ACK后,

  client處于 FIN_WAIT2 狀態(tài),server處于 CLOSE_WAIT 狀態(tài)。它的接收也作為文件結(jié)束符傳遞給應(yīng)用進(jìn)程,因?yàn)镕IN的接

  收 意味著應(yīng)用進(jìn)程在相應(yīng)的連接上再也接收不到額外數(shù)據(jù);

  4) 一段時(shí)間之后,當(dāng)server端檢測(cè)到client端的關(guān)閉操作(read返回為0)。接收到文件結(jié)束符的server端調(diào)用close 關(guān)閉它的socket。這導(dǎo)致server端的TCP也發(fā)送一個(gè)FIN N;此時(shí)server的狀態(tài)為last――ack .

  5)當(dāng)client收到來(lái)自server的FIN后 。 client端的套接字處于 TIME_WAIT 狀態(tài),它會(huì)向server端再發(fā)送一個(gè)ack確認(rèn),此時(shí)server端收到ack確認(rèn)后,此套接字處于CLOSED狀態(tài)。

  介紹一下TCP連接建立與關(guān)閉過(guò)程中的狀態(tài)。TCP連接過(guò)程是狀態(tài)的轉(zhuǎn)換,促使?fàn)顟B(tài)發(fā)生轉(zhuǎn)換的因素包括用戶調(diào)用、特定數(shù)據(jù)包以及超時(shí)等,具體狀態(tài)如下所示:

  1. CLOSED :初始狀態(tài),表示沒(méi)有任何連接。

  2. LISTEN : Server 端的某個(gè) Socket 正在監(jiān)聽(tīng)來(lái)自遠(yuǎn)方的 TCP 端口的連接請(qǐng)求。

  3. SYN_SENT :發(fā)送連接請(qǐng)求后等待確認(rèn)信息。當(dāng)客戶端 Socket 進(jìn)行 Connect 連接時(shí),會(huì)首先發(fā)送 SYN 包,隨即進(jìn)

  入 SYN_SENT 狀態(tài),然后等待 Server 端發(fā)送三次握手中的第 2 個(gè)包。

  4. SYN_RECEIVED :收到一個(gè)連接請(qǐng)求后回送確認(rèn)信息和對(duì)等的連接請(qǐng)求,然后等待確認(rèn)信息。通常是建立TCP 連接的三次握手過(guò)程中的

  一個(gè)中間狀態(tài),表示 Server 端的 Socket 接收到來(lái)

  自 Client 的 SYN 包,并作出回應(yīng)。 ESTABLISHED :表示連接已經(jīng)建立,可以進(jìn)行數(shù)據(jù)傳輸。

  5. FIN_WAIT_1 :主動(dòng)關(guān)閉連接的一方等待對(duì)方返回 ACK 包。若 Socket 在 ESTABLISHED 狀態(tài)下主動(dòng)關(guān)閉連接并向?qū)Ψ桨l(fā)送 FIN 包(表示己方不再有數(shù)據(jù)需要發(fā)送),則進(jìn)

  入 FIN_WAIT_1 狀態(tài),等待對(duì)方返回 ACK包,此后還能讀取數(shù)據(jù),但不能發(fā)送數(shù)據(jù)。在正常情況下,無(wú)論對(duì)方處于何種狀態(tài),都應(yīng)該馬上返回 ACK包,所以 FIN_WAIT_1 狀態(tài)一般很難見(jiàn)到。

  6. FIN_WAIT_2 :主動(dòng)關(guān)閉連接的一方收到對(duì)方返回的 ACK 包后,等待對(duì)方發(fā)送 FIN 包。處于 FIN_WAIT_1 狀態(tài)下

  的 Socket 收到了對(duì)方返回的 ACK 包后,便進(jìn)

  入 FIN_WAIT_2 狀態(tài)。由于 FIN_WAIT_2 狀態(tài)下的 Socket需要等待對(duì)方發(fā)送的 FIN 包,所有常?梢钥吹。若

  在 FIN_WAIT_1 狀態(tài)下收到對(duì)方發(fā)送的同時(shí)帶有 FIN 和ACK 的包時(shí),則直接進(jìn)入 TIME_WAIT 狀態(tài),無(wú)須經(jīng)

  過(guò) FIN_WAIT_2 狀態(tài)。

  7. TIME_WAIT :主動(dòng)關(guān)閉連接的一方收到對(duì)方發(fā)送的 FIN 包后返回 ACK 包(表示對(duì)方也不再有數(shù)據(jù)需要發(fā)送,此后不能再讀取或發(fā)送數(shù)據(jù)),然后等待足夠長(zhǎng)的時(shí)間( 2MSL )以確保對(duì)方接收到 ACK 包(考慮到丟失 ACK 包的可能和迷路重復(fù)數(shù)據(jù)包的影響),最后回到 CLOSED 狀態(tài),釋放網(wǎng)絡(luò)資源。

【Java最新筆試題(附詳細(xì)答案】相關(guān)文章:

ARM硬件筆試題附答案07-05

電工面試題附答案06-28

誰(shuí)有比較全面的Java程序員面試題(附答案)?07-13

最新Java基礎(chǔ)面試題07-02

Java常見(jiàn)面試題(含答案)07-13

古詩(shī)試題訓(xùn)練:途中見(jiàn)杏花(附答案)07-03

消防安全知識(shí)考試試題附答案07-04

32道java程序員面試題及答案07-13

《孔乙己》現(xiàn)代文閱讀附答案幾試題分析07-03

西塞山懷古古詩(shī)閱讀試題訓(xùn)練(附答案)07-03