Iteratively, I know how to find the max number: Set Max = List[0], for k in range(len(List)), if List[k] > Max, Max = List[k]. Return Max.
Recursively, I'm not quite sure. Here is my idea: I understand that the objective of recursion is to start out with a base case that will eventually end the recursion; until then, the goal is to recursively call the function that will make the data get smaller and smaller. (until it will reach the base case). I am not really sure how to implement this though.
Use the fact that for finite sets $A$ and $B$ $$\max(\max(A),\max(B)) = \max(A \cup B)$$
A proposed algorithm findMax(X) would first check if $|X| \leq 2$, in which case just check which element is largest and return this (base case). Otherwise split X into two roughly equal length arrays $X_1,X_2$ and then return the larger of findMax($X_1$) and findMax($X_2$)