# Algorithms ## Find the Largest Number in a List Problem: Given a list of positive numbers, return the largest number of the list. Inputs: A list L of positive numbers. This list must contain at least one number. (Asking for the largest number in a list of no numbers is not a meaningful question.) Outputs: A number n, which will be the largest number of the list. ### Solution 1 Algorithm: 1. Set max to 0. 2. For each number x in the list L, compare it to max. If x is larger, set max to x. 3. max is now set to the largest number in the list. Implementation: ```python def find_max (L): max = 0 for x in L: if x > max: max = x return max ``` ### Solution 2 Algorithm: 1. If L is of length 1, return the first item of L. 2. Set v1 to the first item of L. 3. Set v2 to the output of performing find_max() on the rest of L. 4. If v1 is larger than v2, return v1. Otherwise, return v2. Implementation: ```python def find_max (L): if len(L) == 1: return L[0] v1 = L[0] v2 = find_max(L[1:]) if v1 > v2: return v1 else: return v2 ```