Recursion (Basics) Solutions
Recursion (Basics) Solutions
nazim45200@gmail.com
Solution 1:
public class Solution {
public static void allOccurences(int arr[], int key, int i) {
if(i == arr.length) {
return;
}
if(arr[i] == key) {
System.out.print(i+" ");
}
allOccurences(arr, key, i+1);
}
public static void main(String[] args) {
int arr[] = {3, 2, 4, 5, 6, 2, 7, 2, 2};
int key = 2;
allOccurences(arr, key, 0);
System.out.println();
}
}
Solution 2:
public class Solution {
static String digits[] = {"zero", "one", "two", "three", "four", "five", "six",
"seven", "eight", "nine"};
nazim45200@gmail.com
Solution 3 :
public class Solution {
public static int length(String str) {
if(str.length() == 0) {
return 0;
}
return length(str.substring(1)) + 1;
}
public static void main(String[] args) {
String str = "abcde";
System.out.println(length(str));
}
}
Solution 4 :
public class Solution {
public static int countSubstrs(String str, int i, int j, int n) {
if (n == 1) {
return 1;
}
if (n <= 0) {
return 0;
}
if (str.charAt(i) == str.charAt(j)) {
res++;
}
return res;
}
public static void main(String[] args) {
nazim45200@gmail.com
String str = "abcab";
int n = str.length();
System.out.print(countSubstrs(str, 0, n-1, n));
}
}
Solution 5 :
public class Solution {
public static void towerOfHanoi(int n, String src, String helper, String dest) {
if(n == 1) {
System.out.println("transfer disk " + n + " from " + src + " to " + dest);
return;
}
The Solution for this particular question has also been discussed here :
https://www.youtube.com/watch?v=u-HgzgYe8KA
At timestamp : 00:05