-
Notifications
You must be signed in to change notification settings - Fork 1
/
First Index of Number.cpp
40 lines (32 loc) · 1.04 KB
/
First Index of Number.cpp
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
/*
First Index of Number
Given an array of length N and an integer x, you need to find and return the first index of integer x present in the array. Return -1 if it is not present in the array.
First index means, the index of first occurrence of x in the input array.
Do this recursively. Indexing in the array starts from 0.
Input Format :
Line 1 : An Integer N i.e. size of array
Line 2 : N integers which are elements of the array, separated by spaces
Line 3 : Integer x
Output Format :
first index or -1
Constraints :
1 <= N <= 10^3
*/
int firstIndex(int input[], int size, int x, int count = 0) {
/* Don't write main().
Don't read input, it is passed as function argument.
Return output and don't print it.
Taking input and printing output is handled automatically.
*/
// base case
if(size == 0) {
return -1;
}
// nth step
if(input[0] == x){
return count;
}
// hypothesis step
int hypothesis_step = firstIndex(input + 1, size - 1, x, count + 1);
return hypothesis_step;
}