1. 程式人生 > >一些面試

一些面試

base nlogn 數據 abstract 新的 pub get 快速 cpu調度

1.特征向量,求解公式。//轉自:https://blog.csdn.net/woainishifu/article/details/76418176

從數學上講,Ax= λx,也就是矩陣A作用於列向量x後,x仍然在原來的直線上,仍然是平行於原來的,所以即可以用 λ和x來完全表述矩陣A。

//PS我終於明白一點了。

一個特征值就對用一個特征向量,那麽特征向量怎麽求呢?由公式 ( λE-A)x=0,也就是把特征向量x給提取了出來。

首先求特征值由| λE-A|即可求得,代入上式中即可求得其對應的特征向量,如果 λ是重特征根的話,那麽則可能對應一個基礎解系,基礎解系的系數不同時為0的實數。

2.協方差矩陣,對角線表示的含義。//轉自:https://www.cnblogs.com/chaosimple/p/3182157.html

協方差是描述兩個隨機變量之間的相關關系,公式為cov(X,Y)=Σ(Xi-平均Y)(Yi-平均Y)/(n-1),如果協方差>0,那麽兩個隨機變量正相關;如果<0,負相關,相關的話就可以引入相關系數了;若=0,無關,即相互獨立。

但是協方差是只能表示兩個隨機變量之間的關系,如果有多個隨機變量,即n維的,對角線就是各個維度的方差。即不同維度之間的協方差。

3.擅長哪科?數據結構

數據結構的:

4.如何計算sin1?

1是弧度,弧度與度的轉換:一個圓是2π=360°,那麽1rad=180°/π=180°/3.14≈57.30°,然後1°=π/180° rad.所以sin1就約等於sin57.30°。

5.什麽是線性相關?

對於一組向量,存在不全為0的一組數,使得向量組線性組合之後為0,那麽就稱其是線性相關的。//這個稱為是線性組合!!!

也就是看其線性組合是否存在非0解系數,即把系數矩陣轉化為最簡形矩陣(是階梯形的矩陣;所有非0行首元素為1,且1所在的列其他元素均為0),即

線性相關就是說這幾個向量是在一個平面上,線性無關就不在一個平面上;

6.英文對面向對象思想的理解.

Object-oriented is based on the concept of objects. It may contain attributes and methods. Objects are the instances of classes. The abstraction of objects is classes. It has many features, including encapsulation, inheritence, Polymorphism(多態)。

面向對象的核心是多態。

7.對繼承的理解。

When a subclass inherits a parent class, the subclass gets the attributes and methods of the father whose Modifier is public or protected. And it can override the methods of the father. But 繼承 violates the encapsulation of class.

8.怎樣看待個人理想與中國夢的關系?

個人的夢想是中國夢的一塊塊的基石,是它的重要組成部分;而中國夢又為個人實現夢想提供了很好的平臺,;當他們互相作用時,都會綻放的更快,是相互促進的關系。

9.堆排序及穩定性和復雜度

不穩定排序,復雜度為O(nlogn).順便插一個英文陳述快速排序: pivot. comparison. recursively這是關鍵詞。組句就可以了。

10.優先隊列(OS裏的),CPU調度算法。

先來先服務(對短作業不好)、最短作業優先:非搶占和搶占(也就是最短剩余時間優先)、時間片輪轉(時間片被用完後就會插入優先隊列的末尾)、

OS課程設計就是設計多級反饋隊列調度算法,UNIX系統采用這種,首先是有N個隊列,每個隊列的優先級是不同的,每個隊列內部是實行的時間片輪轉調度,並且隊列與隊列之間,隨著隊列優先級的升高,時間片越來越長,比如2,4,8..

這樣的話,一個作業來了之後,首先是被放到第一隊列,如果有作業正在執行則等待其執行完畢後才執行當前,若執行完一個時間片之後仍然沒有完成作業,那麽就下一優先級隊列的隊尾。非搶占的這樣執行。

11.全局變量

會使系統比較混亂?而且會產生命名汙染,優先級低於局部變量。

12.完全二叉樹和滿二叉樹,256個節點能夠成幾層的二叉樹?

堆就是完全二叉樹,假設是h層的,那麽1~h-1是滿的,h層的節點都集中在左側。層數從1開始計數,那麽一個h層的二叉樹最多有2^h-1個節點。完全二叉樹的葉結點個數可以由節點總數推導出來。n0=n/2。采用順序存儲比較合適。

13.如何保證瀏覽器訪問到的內容是最新的?//轉自:https://www.cnblogs.com/slly/p/6732749.html

//瀏覽器端有緩存,減少網絡帶寬消耗,降低服務器的壓力,並且減小頁面訪問時間。首次請求是向web服務器請求的。

那麽又是如何維持瀏覽器訪問的是最新的呢?

這些維持更新的參數都設置在http報頭的參數部分。有一個有效時間的參數,還有一個last modified的參數,來表示最後修改時間,通常兩個是在一起的,當用戶訪問時,即使設置了緩存時間,瀏覽器依舊會向服務器發送消息,如果未修改則返回304,如果修改了那麽就會返回最新的數據。

14.銀行家算法是什麽,死鎖避免和死鎖預防有什麽區別。

銀行家是避免死鎖的算法,在分配資源之前計算安全性,即進程安全狀態與不安全狀態,對一個進程序列{P1,P2,P3.....}如果每一個進程Pi所需要的資源,<當前系統可用資源+所有進程已占用資源數,那麽就是安全的。安全狀態一定是沒有死鎖發生的。

數據結構包括:可利用資源向量、最大需求矩陣(n個進程對m個資源的最大需求數量)、分配矩陣、需求矩陣。死鎖也就是兩個進程在互相等待對方釋放資源,若無外界作用,那麽就會一直等待下去。死鎖發生的四個條件:互斥條件(進程對分配給其他的資源不能訪問)、請求和保持(也就是當前進程可以去請求其他的資源但是仍然保持自己占有的資源)、不可剝奪條件、環路等待。

死鎖預防是破壞形成死鎖的四個條件:資源一次性分配、可以剝奪資源、每一個進程賦予編號,按編號遞增請求資源,釋放則相反(破壞環路等待條件)。死鎖避免是就是避免當前進入不安全狀態,那麽就可能會影響系統的性能,也就是在分配資源之前要進行狀態檢查。

15.怎麽樣實現網絡強國?

需要良好的網絡生態,需要技術的創新,需要互聯網企業增強使命感,責任感。增強網絡管理的水平與網絡空間安全的預防能力。同時也需要有法律來保障,互聯網的基礎設施。

一些面試