DERIVING PARAMETERIZED TIME COMPLEXITY FUNCTIONS: Example Algorithm #1: read n -- sum = 0 | i = 1 | while (i <= n) -- | sum = sum + P1(n) -- | | T(n) = 3n + nT(P1) + 5 i = i + 1 -- -- | print sum | | -- 2 + T(P1) | | | | n(2 + T(P1) + 1) + 1 | = 3n + nT(P1) +1 | | (3n + NT(P1) +1) + 4 = 3n + nT(P1) + 5 Example Algorithm #2: read n -- sum = 0 | i = 1 | while (i <= n) -- | j = P1(n) -- | | while (j <= n) -- | | | T(n) = 3n^2 + n^2T(P2) + sum = sum + -- | | | | 4n + nT(P1) + 5 (i * (j + 1)) + | | | | | P2(n) | | | | | j = j + 1 -- -- | | | i = i + 1 | | -- -- | print sum | | | | -- 2 + T(P2) | | | | | | | | n(2 + T(P2) + 1) + 1 | | | = 3n + nT(P2) + 1 | | | | | | (3n + nT(P2) + 1) + 2 + T(P1) | | = 3n + nT(P2) + 3 + T(P1) | | | | n((3n + nT(P2) + 3 + T(P1)) + 1) + 1 | = 3n^2 + n^2T(P2) + 4n + nT(P1) + 1 | | (3n^2 + n^2T(P2) + 4n + nT(P1) + 1) + 4 = 3n^2 + n^2T(P2) + 4n + nT(P1) + 5