演算法及設計模式基礎面試題

2021-10-25 01:24:34 字數 799 閱讀 2791

​ 它是將輸入轉換為輸出的一系列計算步驟

​ 解決具體問題所需要的解決方法

c4.5

​ 是對id3演算法做了改進:用資訊增益率來選擇屬性,在樹構造過程中進行剪枝

加密演算法可以分為:可逆加密和不可逆加密,可逆加密分為對稱加密和非對稱加密

md5資訊摘要演算法具體演算法不是很了解

設計模式就是經過前人無數次的實踐總結出的,設計過程中可以反覆使用的、可以解決特定問題的設計方法

定義:核心的工廠類不再負責所有產品的建立,而是將具體建立的工作交給子類去做,該核心類成為乙個抽象

​ 工廠的角色,僅負責給出具體工廠子類必須實現的介面

應用場景:客戶端不知道它所需要的物件的類,抽象工廠類通過其子類來指定建立哪個物件

定義:簡單地說是工廠的工廠,抽象工廠可以建立具體工廠,由及具體工廠來生產具體產品

應用場景:系統中有多於乙個的產品族,而每次只使用其中某一產品族

定義:又叫發布-訂閱模式。是一種行為型模式,他定義物件之間一種一對多的依賴關係,使得當乙個物件改變狀態,所有依賴於它的物件都會得到通知並自動更新

職責:主要用於一對多的通知,當乙個物件的狀態變化時,他需要及時告知一系列物件,令他們做出相應變化

分類:推模型和拉模型

推模型:物件向觀察者推送資訊,不管觀察者是否需要,推送的資訊通常都是物件的全部資料

拉模型:物件在通知觀察者的時候,只傳遞少量資訊。如果觀察者需要更具體的資訊,由觀察者主動找物件 獲取

應用場景:對乙個物件狀態的更新,需要其他物件同步更新,而且其他物件的數量動態可變,物件僅需要將自己的更新通知給其他物件而不需要知道其他物件的細節

設計模式面試題

參考 常用的設計模式彙總,超詳細!這個模式本身很簡單而且使用在業務較簡單的情況下。一般用於小專案或者具體產品很少擴充套件的情況 這樣工廠類才不用經常更改 它由三種角色組成 來用類圖來清晰的表示下的它們之間的關係 抽象工廠模式 先來認識下什麼是產品族 位於不同產品等級結構中,功能相關聯的產品組成的家族...

Java面試題 設計模式

單例模式 保證被建立一次,節省系統開銷。工廠模式 簡單工廠 抽象工廠 解耦 觀察者模式 定義了物件之間的一對多的依賴,這樣一來,當乙個物件改變時,它的所有的依賴者都會收到通知並 自動更新。外觀模式 提供乙個統一的介面,用來訪問子系統中的一群介面,外觀定義了乙個高層的介面,讓子系統更容易使 用。模版方...

面試題 2 設計模式

指乙個類只有乙個例項,且該類能自行建立這個例項的一種模式。例如,windows 中只能開啟乙個任務管理器,這樣可以避免因開啟多個任務管理器視窗而造成記憶體資源的浪費,或出現各個視窗顯示內容的不一致等錯誤。通過提供乙個靜態的物件instance,利用private許可權的構造方法和getinstanc...