Write a recursive function named match_count
that accepts two arrays of integers as parameters and that returns the number of elements that match between them.
Two elements match if they occur at the same index in both lists and have equal values.
For example, given the two arrays shown below, the call of match_count($v1, $v2)
would compare as follows:
$v1: [2, 5, 0, 3, 8, 9, 1, 1, 0, 7]
| | | | | | |
$v2: [2, 5, 3, 0, 8, 4, 1]
The function should return 4 in this case because 4 of these pairs match (2-2, 5-5, 8-8, and 1-1).
If either list is empty, by definition it has no matches with the other list, so your function should return 0.
Constraints:
- Your function must be recursive and not use any loops (for, while, etc.).
- You may not use additional strings or arrays other than the parameters passed.
- When your code is done running, the two lists should have the same contents as when the call began.
- Your solution should run in no worse than O(N) time, where N is the number of elements in the lists.