Skip to content

Commit d204155

Browse files
Recursion Day 8 is Completed
1 parent c90407f commit d204155

2 files changed

Lines changed: 80 additions & 0 deletions

File tree

Recursion/SkipLetter.java

Lines changed: 55 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,55 @@
1+
package Recursion;
2+
3+
public class SkipLetter {
4+
5+
private static String skip(String str, String target, int index) {
6+
String s = "";
7+
if (index == str.length())
8+
return s;
9+
if (target.equals(str.charAt(index) + ""))
10+
s = "" + skip(str, target, index + 1);
11+
else
12+
s = str.charAt(index) + skip(str, target, index + 1);
13+
return s;
14+
}
15+
16+
private static String skip(String str, String target) {
17+
String s = "";
18+
if (str.length() == 0)
19+
return s;
20+
if (target.equals(str.charAt(0) + ""))
21+
s = "" + skip(str.substring(1), target);
22+
else
23+
s = str.charAt(0) + skip(str.substring(1), target);
24+
return s;
25+
}
26+
27+
private static void skip(String str, String target, String ans) {
28+
if (str.length() == 0) {
29+
System.out.println(ans);
30+
return;
31+
}
32+
if (target.equals(str.charAt(0) + ""))
33+
skip(str.substring(1), target, ans);
34+
else
35+
skip(str.substring(1), target, ans + str.charAt(0));
36+
37+
}
38+
39+
private static String skip(String str) {
40+
if (str.length() == 0) {
41+
return "";
42+
}
43+
if (str.charAt(0) == 'a')
44+
return skip(str.substring(1));
45+
else
46+
return str.charAt(0) + skip(str.substring(1));
47+
}
48+
49+
public static void main(String[] args) {
50+
System.out.println(skip("baccad", "a", 0));
51+
System.out.println(skip("baccad", "a"));
52+
skip("baccadah", "a", "");
53+
System.out.println(skip("baccadadeda"));
54+
}
55+
}

Recursion/SkipWord.java

Lines changed: 25 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,25 @@
1+
package Recursion;
2+
3+
public class SkipWord {
4+
5+
private static String skip(String str) {
6+
if (str.length() == 0)
7+
return "";
8+
if (str.startsWith("apple"))
9+
return skip(str.substring(5));
10+
return str.charAt(0) + skip(str.substring(1));
11+
}
12+
13+
private static String skipAppNotApple(String str) {
14+
if (str.length() == 0)
15+
return "";
16+
if (str.startsWith("app") && !str.startsWith("apple"))
17+
return skipAppNotApple(str.substring(3));
18+
return str.charAt(0) + skipAppNotApple(str.substring(1));
19+
}
20+
21+
public static void main(String[] args) {
22+
System.out.println(skip("aaerefapplesdfe"));
23+
System.out.println(skipAppNotApple("apprefapplesdfe"));
24+
}
25+
}

0 commit comments

Comments
 (0)