1. 程式人生 > 實用技巧 >低秩稀疏矩陣恢復演算法整理與模擬

低秩稀疏矩陣恢復演算法整理與模擬

設計模式之直譯器模式

(這個模式比較難理解,在專案中很少用到了解即可)

什麼是直譯器模式

定義一個語法,定義一個直譯器,該直譯器處理該語法句子
將某些複雜問題,表達為某種語法規則,然後構建直譯器來解釋處理這類句子
在這裡插入圖片描述
超類是抽象表示式(AbstractExpression)--------派生出兩個子類TerminalExpression和NOnterminanExpression
TerminalExpression(終結者表示式)表示具體的數值,因為他是沒有辦法在拆分的,不需要依賴其他的符號。
NOnterminanExpression(非終結者表示式)派生出來主要是加減乘除的,因為它本身是依賴於中介表示式的,因為他只有根據數字才能進行操作。

直譯器模式的優缺點

優點

1.容易修改,修改語法規則只要修改相應相應非終結者符即可
2.擴充套件方便,擴充套件語法,只要增加非終結者符類即可

缺點

1.對於複製語法的表示會產生複雜的類層次結構,不便管理和維護
2.直譯器模式會採用遞迴方式來處理,效率會受影響