У меня много if
операторов, и я хочу найти наиболее оптимизированную последовательность для них.
Каждый случай имеет разную временную сложность и вызывается разное количество раз.Например, case1
может быть Θ(n^2)
против case3
из Θ(log(n))
, но второй останавливает функцию раньше, поэтому может быть лучше поместить ее первой.
Как бы я поступилнайти наиболее эффективный способ заказа операторов if?
def function1():
if case1:
return False
if case2:
return False
if case3:
return False
# caseN...
return True