2018校招vivo軟體開發崗(提前批)筆試考點
vivio校招軟體開發崗(提前批)
題目型別:總共38道題目,60分鐘
25道選擇題,10道填空題,2道問答題,1道程式設計題
軟體開發崗涉及到的語言有:C, C++ Java (不要以為投的是C, C++,就不考Java了,這對非科班出身的不利,所有平時要多補補基礎知識)
1. 資料庫系統資料產生不一致的根本原因是()資料冗餘
2.王牌 在一盤紙牌遊戲中,某個人的手中有這樣的一副牌:
(1)正好有十三張牌。
(2)每種花色至少有一張。
(3)每種花色的張數不同。
(4)紅心和方塊總共五張。
(5)紅心和黑桃總共六張。
(6)屬於“王牌”花色的有兩張。紅心、黑桃、方塊和梅花這四種花色,
哪一種是“王牌”花色?
解答:據(1),(2),(3),此人手中四種花色的分佈是以下三種可能
情況之一:
(a)1237
(b)1246
(c)1345
根據(6),情況(c)被排除,因為其中所有花色都不是兩張牌。根據(5),
情況(a)被排除,因為其中任何兩種花色的張數之和都不是六。因此,(b)是
實際的花色分佈情況。根據(5),其中要麼有兩張紅心和四張黑桃,要麼有四
張紅心和兩張黑桃。根據(4),其中要麼有一張紅心和四張方塊,要麼有四張
紅心和一張方塊。綜合(4)和(5),其中一定有四張紅心;從而一定有兩張黑
桃。因此,黑桃是王牌花色。
概括起來,此人手中有四張紅心、兩張黑桃、一張方塊和六張梅花。
3 JAVA中關鍵字final 分別修飾類,方法,變數,各起什麼作用?
final修飾類是不能被繼承
fianl修飾方法不能在子類中被覆蓋
final修飾變數,稱為常量,初始化以後不能改變值。
4 :地址變換機構的基本任務是:實現從邏輯地址到實體地址的轉換。
5. 大端模式的概念
6. C語言問題:記憶體的分配方式
記憶體分配方式有三種:
(1)、從靜態儲存區域分配。記憶體在程式編譯的時候就已經分配好,這塊記憶體在程式的整個執行期間都存在。例如全域性變數,static變數。
(2)、在棧上建立。在執行函式時,函式內區域性變數的儲存單元都可以在棧上建立,函式執行結束時這些儲存單元自動被釋放。棧 記憶體分配運算內置於處理器的指令集中,效率很高,但是分配的記憶體容量有限。
(3)、從堆上分配,亦稱動態記憶體分配。程式在執行的時候用malloc或new申請任意多少的記憶體,程式設計師自己負責在何時用free或delete釋放記憶體。動態記憶體的生存期由程式設計師決定,使用非常靈活,但如果在堆上分配了空間,就有責任回收它,否則執行的程式會出現記憶體洩漏,頻繁地分配和釋放不同大小的堆空間將會產生堆內碎塊。
記憶體分配方式有三種:
(1)、從靜態儲存區域分配。記憶體在程式編譯的時候就已經分配好,這塊記憶體在程式的整個執行期間都存在。例如全域性變數,static變數。
(2)、在棧上建立。在執行函式時,函式內區域性變數的儲存單元都可以在棧上建立,函式執行結束時這些儲存單元自動被釋放。棧記憶體分配運算內置於處理器的指令集中,效率很高,但是分配的記憶體容量有限。
(3)、從堆上分配,亦稱動態記憶體分配。程式在執行的時候用malloc或new申請任意多少的記憶體,程式設計師自己負責在何時用free或delete釋放記憶體。動態記憶體的生存期由程式設計師決定,使用非常靈活,但如果在堆上分配了空間,就有責任回收它,否則執行的程式會出現記憶體洩漏,頻繁地分配和釋放不同大小的堆空間將會產生堆內碎塊。
7. 三個連續自然數,它們的最小公倍數是210,這三個連續自然數是5,6,7
8. linux基本操作命令:linux用grep在檔案中查詢字串並顯示字串在檔案中的行號?
grep -niR '想要查詢的字元' xxx
注:n,顯示行號 R,查詢所有檔案包含子目錄 i,忽略大小寫 最後的“xxx”表示想要查詢的檔名
例:如果你想在當前目錄下 查詢"hello,world!"字串,可以這樣:grep -rn "hello,world!" ././ : 表示路徑為當前目錄.-r 是遞迴查詢-n 是顯示行號
9. java的原始檔的副檔名是(java),編譯後的副檔名是(class)
10.安卓四大元件顯示頁面的是哪個組建:activity
11. -65的補碼是多少?
12.以下屬於網路層的是()選ARP
13. 向一個有N個元素的順序表中插入一個元素,平均要移動的個數為? n/2
14. 有一個用陣列 C[1..m]表示的環形佇列,m 為陣列的長度。假設 f 為隊頭元素在陣列中的位置,r 為隊尾元素的後一位置(按順時針方向)。若佇列非空,則計算佇列中元素個數的公式應為?(選第一個)
-
(m+r-f)mod m
-
r-f
-
(m-r+f) mod m
-
(m-r-f) mod m
-
(r-f) mod m
15. 現有一個包含m個節點的三叉樹,即每個節點都有三個指向孩子結點的指標,請問:在這3m個指標中有()個空指標。——選C
-
2m
-
2m-1
-
2m+1
-
3m
16. 執行緒同步的四種方式的機制 :臨界區(Critical Section)、互斥量(Mutex)、訊號量(Semaphore)、事件(Event)
17.以下對Java關鍵字描述錯誤的是()
18. 紅黑樹插入、刪除、查詢,基數樹
19.堆排序的最壞時間複雜度為()——選擇題
20. Java中volatile含義正確的是()
21.程式設計題:重疊字串
其他題目:邏輯推理,C語言基本概念
模擬測試
1 資料結構
棧,佇列操作
2 邏輯分析題
3 程序併發執行的環境中,多個程序之間存在如下競爭和合作的關係:
- 程序中的資源爭用(間接作用)
當併發程序競爭使用同一個資源時,它們之間就會發生衝突。為了避免衝突,當一個程序獲得資源時,另一個程序必須等待。這種情況需要通過互斥機制來解決。
- 程序間通過共享的合作(間接作用)
一個程序等待另一個程序的執行,並以另一個程序的執行結果作為本程序的執行條件,就形成了同步機制
- 程序間通過通訊的合作(直接作用)
程序間還可以通過通訊進行合作,同性提供了同步和協調各種活動的方法。如作業系統提供的通訊功能。
4 基本的計算機知識:
http含義,ftp含義——HTTP是Hyper Text Transfer Protocol,超文字傳輸協議;FTP是File Transfer Protocol,檔案傳輸協議;HTTP是面向網頁的,而FTP是面向檔案的。
補充:URL Uniform Resource Locator統一資源定位器,功能是統一的方式指定internet資訊資源的位置;
TCP/IP:Transmission Control Protocol/Internet Protocol的簡寫,中譯名為傳輸控制協議/因特網互聯協議,又名網路通訊協議,是Internet最基本的協議、Internet國際網際網路絡的基礎,由網路層的IP協議和傳輸層的TCP協議組成。TCP/IP 定義了電子裝置如何連入因特網,以及資料如何在它們之間傳輸的標準。協議採用了4層的層級結構,每一層都呼叫它的下一層所提供的協議來完成自己的需求。通俗而言:TCP負責發現傳輸的問題,一有問題就發出訊號,要求重新傳輸,直到所有資料安全正確地傳輸到目的地。而IP是給因特網的每一臺聯網裝置規定一個地址。
5 軟體測試的一般步驟(4步)
(1)單元測試(也稱模組測試):針對軟體設計的基本單元——程式模組,進行正確性檢驗的測試工作。目的在於發現各個模組內部可能存在的各種差錯。單元測試需要從程式內部結構出發設計測試用例,多個模組可以平行、獨立地進行測試;
(2)整合測試(也稱組裝測試,聯合測試):在單元測試的基礎上,將所有模組按設計要求整合在一起進行測試,以檢驗總體設計中各模組間的介面設計問題、模組之間的相互影響、上層模組存在的各種差錯及全域性資料結構對系統的影響等方面。
(3)確認測試(也稱驗收測試,有效性測試):主要檢驗軟體的功能和效能是否與需求說明書中的規定一致。
(4)系統測試:將軟體系統作為一個元素,放入整個實際的計算機系統中,與計算機硬體、其他軟體、使用人員等系統元素結合在一起,在實際使用環境下進行綜合全面的測試。
6 還考到Java,C++基礎知識