中綴轉后綴表達式過程 真值表轉換邏輯表達式?
真值表轉換邏輯表達式?比較簡單的一種是枚舉輸入量的組合值,所以計算復雜度是2^n,n表示變量個數(shù)。當然由于邏輯表達式比較簡單,只有 *非最后還有括號,比四則運算要簡單的多。一個建議是使用修改的鏈表或者
真值表轉換邏輯表達式?
比較簡單的一種是枚舉輸入量的組合值,所以計算復雜度是2^n,n表示變量個數(shù)。當然由于邏輯表達式比較簡單,只有 *非最后還有括號,比四則運算要簡單的多。一個建議是使用修改的鏈表或者棧實現(xiàn),畢竟輸出真值表要枚舉每個變量的真值。
建議的方式如下:使用鏈表或者數(shù)組存儲表達式,節(jié)點類型可以自定義:包含一個指向外部的引用或者連接表示這個變量當前的值。然后使用棧將中綴表達式轉化為后綴表達式進行壓棧計算。依照枚舉組合一次遍歷鏈表。
請參考:數(shù)據(jù)結構-棧-四則計算(中綴表達式、后綴表達式)、鏈表、以及《組合數(shù)學》組合生成算法