Algorithm Analysis
Last updated
Last updated
def find_max(data):
# Return the maximum element from a nonempty Python list
biggest = data[0] # The initial value to beat
for val in data: # For each value:
if val > biggest: # if it is greater than the best so far,
biggest = val # we have found a new best (so far)
return biggest # When loop ends, biggest is the max
def prefix_average1(S):
# Return list such tath, for all j, A[j] equals average of S[0], ..., S[j]
n = len(S)
A = [0]*n # Create new list of n zeros
for j in range(n):
total = 0 # begin computing S[0]+...+S[j]
for i in range(j+1):
total += S[i]
A[j] = total / (j+1) # record the average
return Adef prefix_average2(S):
n = len(S)
A = [0]*n
for j in range(n):
A[j] = sum(S[0:j])/(j+1)
return Adef prefix_average3(S):
n = len(S)
A = [0] * n
total = 0
for j in range(n):
total += S[j]
A[j] = total / (j+1)
return A