假設您有一個使用兩個度量返回值的函數/方法 - 實質上是可能值的二維矩陣。使用邏輯(嵌套的if/switch語句)選擇正確的值,還是隻是構建該矩陣(作爲Array/Hash/Dictionary /其他),然後返回值變成執行查找的問題更好?邏輯或查找表:最佳做法
我的直覺說,對一個中號⨉Ñ矩陣,對於相對小的值既中號和Ñ(如≤3)將是即可使用的邏輯,但對於較大的值它會只是建立矩陣更有效率。
什麼是這方面的一般最佳實踐?那麼對於一個N維度矩陣呢?
假設您有一個使用兩個度量返回值的函數/方法 - 實質上是可能值的二維矩陣。使用邏輯(嵌套的if/switch語句)選擇正確的值,還是隻是構建該矩陣(作爲Array/Hash/Dictionary /其他),然後返回值變成執行查找的問題更好?邏輯或查找表:最佳做法
我的直覺說,對一個中號⨉Ñ矩陣,對於相對小的值既中號和Ñ(如≤3)將是即可使用的邏輯,但對於較大的值它會只是建立矩陣更有效率。
什麼是這方面的一般最佳實踐?那麼對於一個N維度矩陣呢?
我說的是,約九個條件是if .. else梯子或開關的限制。所以如果你有2D單元格,你可以合理地對上,下,對角線等進行硬編碼。如果你去了三個維度,你有27個案例,它太多了,但如果你被限制在六個幼崽臉上,那麼可以。 一旦你有很多條件,開始通過查找表編碼。
但是沒有真正的答案。例如,Windows消息循環需要處理大量不同的消息,並且不能在查找表中明智地對處理代碼進行編碼。
的決定取決於多種因素,包括:
你在說什麼,「ups」,「下降」,「對角線」和「立方體面」? – istrasci