Una vez que se determina la ecuación del tiempo
de ejecución para un algoritmo, es relativamente
sencillo derivar las expresiones para la complejidad.[29]
Existen algunas reglas sencillas que nos permiten simplificar
las expresiones:
Regla 1: Si f(n) está en O(g(n)) y g(n) está
en O(h(n)), entonces f(n) está en O(h(n)).
Esta regla nos dice que si alguna función g(n)
es una cota superior para una función de costo,
entonces cualquier cota superior para g(n), también
es una cota superior para la función de costo.
Regla 2: Si f(n) está en O(k g(n))
para cualquier constante k>0, entonces f(n) está
O(g(n))
El significado de la regla es que se puede ignorar cualquier
constante multiplicativa en las ecuaciones.
Regla 3: Si f1(n) está en O(g1(n)) y f2(n)
está en O(g2(n)), entonces f1(n) + f2(n) está
en O(max(g1(n),g2(n))).
La regla expresa que dadas dos partes de un programa ejecutadas
en secuencia, sólo se necesita considerar la parte
más cara.
Regla 4: Si f1(n) está en O(g1(n))
y f2(n) está en O(g2(n)), entonces
f1(n) * f2(n) está en O(g1(n) * g2(n)).
Esta regla se emplea para simplificar ciclos simples en
programas. Si alguna acción es repetida un cierto
número de veces, y cada repetición tiene
el mismo costo, entonces el costo total es, el costo de
la acción multiplicado por el número de
veces que la acción tuvo lugar.
Tomando las tres primeras reglas colectivamente, se pueden
ignorar todas las constantes y todos los términos
de orden inferior para determinar la razón de crecimiento
para cualquier función de costo, ya que los términos
de orden superior pronto superan a los términos
de orden inferior en su contribución en el costo
total, conforme n se vuelve grande.