Skip to content

Commit 8da8fd4

Browse files
Create MinimumInsertionsToMakeStringPalindrome.java
1 parent d763db4 commit 8da8fd4

1 file changed

Lines changed: 32 additions & 0 deletions

File tree

Lines changed: 32 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,32 @@
1+
class MinimumInsertionsToMakeStringPalindrome {
2+
public int minInsertions(String s) {
3+
int n = s.length();
4+
5+
StringBuilder rev = new StringBuilder(s);
6+
rev.reverse().toString();
7+
8+
int[][] dp = new int[n+1][n+1];
9+
10+
for(int i = 0; i<n+1; i++){
11+
for(int j = 0; j<n+1; j++){
12+
if(i == 0){
13+
dp[0][j] = 0;
14+
continue;
15+
}
16+
if(j == 0){
17+
dp[i][0] = 0;
18+
continue;
19+
}
20+
21+
if(s.charAt(i-1) == rev.charAt(j-1)){
22+
dp[i][j] = 1+dp[i-1][j-1];
23+
}
24+
else{
25+
dp[i][j] = Math.max(dp[i-1][j], dp[i][j-1]);
26+
}
27+
}
28+
}
29+
30+
return s.length() - dp[n][n];
31+
}
32+
}

0 commit comments

Comments
 (0)