Why does f
work much faster than g
?
def f(n):
s = ''
for i in range(n):
s = s + 'x'
return s
def g(n):
s, t = '', ''
for i in range(n // 2):
s = t + 'x'
t = s + 'x'
return t
print(len(f(500000))) - 0.1s
print(len(g(500000))) - 7.684s
Return values are the same. Why f
has linear complexity, but g
quadratic?