13.3 Recursion with Two Base Cases

Recursive formulations can be more complex than the examples we have discussed. The general case can involve more than one recursive call, with different arguments. This, in turn, means that we can have more than one base case.

Suppose we are playing a networked video game online. There are n players who would like to play. Unfortunately, that game can be played with only p players. We will make the assumption that p is an integer between 0 and n (for instance, n could be 100 and p could be 8). Otherwise, we simply cannot play the game.

Our problem is to determine how many different ways we can choose p players from among n players. We will call that number Combinations(n, p).

The math formula for Combinations(n, ...

Get Java Illuminated, 5th Edition now with the O’Reilly learning platform.

O’Reilly members experience books, live events, courses curated by job role, and more from O’Reilly and nearly 200 top publishers.