last index of a number using recursion code example

Example 1: last index of a number using recursion

int rLookupAr(int array[], int size, int target)
{
    if(size < 1) return -1;

    size--;
    if(array[size] == target) return size;

    return rLookupAr(array, size,target);
}

Example 2: last index of a number using recursion

int rLookupAr (int array[], int size, int target)
{
    if(size<=0)   return -1;

    if(array[size-1] == target)
        return size-1;
    else
        return rLookupAr (array, size-1, target); //recurse

}

Example 3: last index of a number using recursion

int lastIndex(int input[], int size, int x)
{
    if (size == 0)
    {
      return -1;
    }

    int answer = lastIndex(input + 1, size - 1, x);

    if (answer != -1)
    {
      return answer + 1;
    }

    if (input[0] == x)
    {
      return 0;
    }
    else
    {
      return -1;
    }
}

int main()
{
  int input[] = {9, 8, 10, 8};
  int x = 8;
  int size = 4;
  cout << lastIndex(input, size, x);
  return 0;
}