算法如何改进

时间:2015-03-03 12:51:15

标签: php algorithm

这怎么做得更好?不重复代码someFunction(1)。

        if(someTrueOrFalse)
        {
                if(OthersomeTrueOrFalse)
                {
                    someFunction(1);
                }
        } 
        else
        {
            someFunction(1);
        }

1 个答案:

答案 0 :(得分:6)

A = someTrueOrFalse和B = OthersomeTrueOrFalse

 A | B | outcome
-----------------
 0 | 0 |    1
 0 | 1 |    1
 1 | 0 |    0
 1 | 1 |    1

因此:

if (!(someTrueOrFalse && !OthersomeTrueOrFalse)) {
    someFunction(1);
}

或等同地,由@axiac评论

if (!someTrueOrFalse || OthersomeTrueOrFalse) {
    someFunction(1);
}

这取决于两者看起来更好的情况,我想(或者有时它只是一个品味问题)。