【求職】京東 2018 秋招測試開發工程師筆試題

京東 2018 秋招測試開發工程師筆試題

一.單選題

1.若度爲m 的哈夫曼樹中,其葉結點個數爲 n,則非葉結點的個數爲( )

A. n-1

B. n/m-1

C. (n-1)/(m-1)

D. n/(m-1)-1

E. (n+1)/(m+1)-1

2.進程會在各個狀態之間切換,下面哪些是不可能的( )

A. 運行→就緒

B. 運行→等待

C. 等待→運行

D. 等待→就緒

3.若一序列進棧順序爲 a1,a2,a3,a4,問存在多少種可能的出棧序列( )

A. 12

B. 13

C. 14

D. 15

4.下面關於c++拷貝構造函數說法錯誤的是( )

A. 產生了新的對象實例,調用的就是拷貝構造函數;如果沒有,調用的是賦值運算符

B. 沒有定義拷貝構造函數的話,編譯器不會默認自動產生拷貝構造函數

C. 類中可以存在超過一個拷貝構造函數

D. 聲明一個私有拷貝構造函數可以防止按值傳遞對象

5.查詢該目錄及子目錄下所有的以.conf 爲後綴的文件

A. fifind ./ -name “conf”

B. fifind ./ -name “*.[conf]”

C. fifind ./ -type d | egrep “.(conf)”

D. fifind ./ -regextype posix-extended -regex “.*.(conf)”

6.若將網絡192.168.0.0/22 劃分爲5 個子網,則可以劃分出的最小子網的子網掩碼是( )

A. 255.255.255.0

B. 255.255.255.128

C. 255.255.255.192

D. 255.255.255.224

7.有2 個關係模式:訂單表:R(訂單號,日期,客戶名稱,收貨人) 訂單明細表:S(訂單號,商品編

碼,單價,數量) 若要檢索 2017/1/1 到2017/12/31 期間,訂購商品的總金額超過 20000 元的客戶名稱

和總金額,則 SQL查詢語句是( )

A. SELECT客戶名稱,單價數量 AS 總金額 FROM R,S WHERE 日期 BETWEEN *"*2017-1-1"AND “2017-12-31”

AND 單價數量>20000

B. SELECT客戶名稱, SUM(單價數量) AS 總金額 FROM R,S WHERE R.訂單號*=* S.訂單號 AND日期

BETWEEN “2017-1-1” AND “2017-12-31” GROUP BY 客戶名稱 HAVING 單價數量>20000

C. SELECT 客戶名稱, SUM (單價數量*)* AS 總金額 FROM R,S WHERE R.訂單號*=* S.訂單號 AND 日期

BETWEEN “2017-1-1” AND “2017-12-31” GROUP BY 客戶名稱 HAVING SUM(單價數量)>20000

D. SELECT 客戶名稱,單價數量 AS 總金額 FROM R,S WHERE R.訂單號*=* S.訂單號 AND 日期 BETWEEN

“2017-1-1” AND “2017-12-31” GROUP BY 客戶名稱 HAVING 單價數量>20000

8.下面覆蓋標準中 ,覆蓋標準最低的是?( )

A. 語句覆蓋

B. 判定覆蓋

C. 條件覆蓋

D. 判定/條件覆蓋

9.下面代碼如果用基本路徑法測試的話,覆蓋幾條路徑?

void sort(int num, int type){

int a = 0;

int b = 0;

while(num-- > 0){

if(3==type){

a=b+1;

break;

} else if(4==type){

x=y+10;

} else if(5==type){

x=y+20;

} else {

x=y+30;

}

}

}

A. 3

B. 4

C. 5

D. 6

10.正則表達式 ^d+ 【^d】+ 能匹配下列哪個字符串?( )

A. 123

B. 123a

C. d123

D. 123def

E. d7d

11.一個序列爲(13,18,24,35,47,50,63,83,90,115,124),如果利用二分法查找關鍵字爲 90 的,則需要

幾次比較 。( )

A. 1

B. 2

C. 3

D. 4

12.已知一個二叉樹前序遍歷和中序遍歷分別爲 ABDEGCFH和DBGEACHF,則該二叉樹的後序遍歷爲?(

)

A. DGEBHFCA

B. DGEBHFAC

C. GEDBHFCA

D. ABCDEFGH

13.以下哪個命令不能查看文件裏內容?()

A. more

B. cat

C. ls

D. less

14.把14,27,71,50,93,39 按順序插入一棵樹,插入的過程不斷調整使樹爲平衡排序二叉樹,最終形成平衡排

序二叉樹高度爲?

A. 3

B. 4

C. 5

D. 6

15.定義如下程序:

public class Person{

{

tem.out.println(“P1”);

}

static{

System.out.println(“P2”);

}

public Person(){

System.out.println(“P3”);

}

}

public class Students extends Person{

static{

System.out.println(“S1”);

}

{

System.out.println(“S2”);

}

public Students(){

System.out.println(“S3”)

}

public static void main(String[] args){

new Students();

}

}

程序執行結果是?( )

A. P1P2P3S1S2S3

B. P1P2P3S2S1S3

C. P2P1S1P3S2S3

D. P2S1P1P3S2S3

16.下面程序的輸出是?( )

public class Main {

public static void main(String[] args) {

Other o = new Other();

new Main().addOne(o);

System.out.println(o.i);

}

public void addOne(final Other o) {

o.i++;

}

}

class Other {

public int i;

}

A. 0

B. 1

C. 編譯出錯

D. 運行出錯

二.不定項選擇題

1.有關linux 線程的描述,正確的是( )

A. 線程自己擁有很少的資源,但它可以使用所屬進程的資源

B. 同一進程中的多個線程具有相同的地址空間,所以它們間的同步和通信也易於實現

C. 進程創建與線程創建的時空開銷不相同

D. 線程是資源分配的基本單位,進程是資源調度的基本單位

2.以下哪些狀態爲 TCP連接關閉過程中的出現的狀態?()

A. LISTEN

B. TIME-WAIT

C. LAST-ACK

D. SYN-RECEIVED

3.下面選項中,和192.168.3.110/27 屬於一個子網的有哪些( )

A. 192.168.3.94

B. 192.168.3.124

C. 192.168.3.96

D. 192.168.3.126

4.Linux 系統中,哪些可以用於進程間的通信?

A. Socket

B. 臨界區

C. 消息隊列

D. 信號量

5.白盒測試又稱結構測試、透明盒測試、邏輯驅動測試或基於代碼的測試。下面屬於白盒測試方法的有

哪些?( )

A. 句覆蓋

B. 等價類劃分

C. 邊界值分析

D. 判定條件覆蓋

6.下列選項中,有關死鎖的說法正確的是?( )

A. 採用“按序分配”策略可以破壞產生死鎖的環路等待條件

B. 在資源的動態分配過程中,防止系統進入安全狀態,可避免發生死鎖

C. 銀行家算法是最有代表性的死鎖解除算法

D. 產生死鎖的現象是每個進程等待着某個不能得到且不可釋放的資源

7.現有testfifile 文件內容如下所示

12 12 213 5434 3123 123 34 對所有數字求和,以下做法正確的是:( )

A. awk ‘BEGIN{sum}{sum+$1}END{print sum}’ testfifile

B. awk ‘BEGIN{sum =0}{sum+=$1}END{print sum}’ testfifile

C. awk ‘{sum+$1}END{print sum}’ testfifile

D. wk ‘{sum+=$1}END{print sum}’ testfifile

8.以下關於HTTP 說法正確是的:( )

A. HTTP POST方式比 GET更安全

B. HTTP GET請求提交參數沒有長度限制

C. HTTP POST請求提交參數沒有長度限制

D. HTTP GET和POST請求提交參數都沒有長度限制

9.python 代碼如下:( )

foo = [1,2]

foo1 = foo1

foo.append(3)

A. foo 值爲[1,2]

B. foo 值爲[1,2,3]

C. foo1 值爲[1,2]

D. foo1 值爲[1,2,3]

10.在測試“搜索”功能時,下列哪些測試用例是必須的( )

A. 模糊查詢值的搜索測試用例

B. 全數字的搜索測試用例

C. 全半角的搜索測試用例

D. 字母大小寫的搜索測試用例

11.下面選項中對 TCP與 UDP 論述正確的是?( )

A. TCP是面向連接的,如打電話要先撥號建立連接

B. TCP支持一對一,一對多,多對一和多對多的交互通信

C. TCP面向字節流,實際上是 TCP把數據看成一連串無結構的字節流

D. UDP 是無連接的,即發送數據之前不需要建立連接

12.C++中的拷貝構造函數在下面哪些情況下會被調用( )

A. 對象創建的時候

B. 使用一個類的對象去初始化該類的一個新對象

C. 被調用函數的形參是類的對象

D. 當函數的返回值是類的對象時,函數執行完成返回調用者

13.用瀏覽器訪問www.jd.com 時,可能使用到的協議有?( )

A. MAC

B. HTTP

C. SMTP

D. ARP

E. RTSP

14.功能測試用例需包含哪些元素( )

A. 測試步驟

B. 預期結果

C. 測試數據

D. 實際結果

三.編程題

1.兩個子串給定一個字符串 s, 請計算輸出含有連續兩個 s 作爲子串的最短字符串。 注意兩個s 可能有重疊部分。例

如,“ababa"含有兩個"aba”.

輸入描述**😗*

輸入包括一個字符串s,字符串長度length(1 ≤ length ≤ 50),s 中每個字符都是小寫字母.

輸出描述**😗*

輸出一個字符串,即含有連續兩個 s 作爲子串的最短字符串。

輸入例子****1:

abracadabra

輸出例子****1:

abracadabracadabra

2.括號匹配方案

合法的括號匹配序列被定義爲:

\1. 空串""是合法的括號序列

\2. 如果"X"和"Y"是合法的序列,那麼"XY"也是一個合法的括號序列

\3. 如果"X"是一個合法的序列,那麼"(X)"也是一個合法的括號序列

\4. 每個合法的括號序列都可以由上面的規則生成 例如"", “()”, “()()()”, “(()())”, "(((())))"都是合法的。 東

東現在有一個合法的括號序列 s,一次移除操作分爲兩步:

\5. 移除序列s 中第一個左括號

\6. 移除序列s 中任意一個右括號.保證操作之後s 還是一個合法的括號序列 東東現在想知道使用上述的

移除操作有多少種方案可以把序列 s 變爲空 如果兩個方案中有一次移除操作移除的是不同的右括號

就認爲是不同的方案。 例如: s = “()()()()()”,輸出 1, 因爲每次都只能選擇被移除的左括號所相鄰的右

括號. s = “(((())))”,輸出24, 第一次有4 種情況, 第二次有3 種情況, … ,依次類推, 4 * 3 * 2 * 1 = 24

輸入描述**😗*

輸入包括一行,一個合法的括號序列 s,序列長度 length(2 ≤ length ≤ 20).

輸出描述**😗*

輸出一個整數,表示方案數

輸入例子****1:

(((())))

輸出例子****1:

24

求職必備刷題官網:https://github.com/bennyrhys/interview
【更多互聯網公司筆試面試真題請關注“讓我遇見相似的靈魂”公衆號】

發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章