Please can someone explain how does the code below work?
int minElement(int arr[], int n) {
if(n == 1)
return arr[0];
else {
int m = minElement(arr, n-1);
if(m < arr[n-1])
return m;
else
return arr[n-1];
}
}