diff --git a/src/main/java/com/github/pedrovgs/Longest_Palindrome_Subsequence b/src/main/java/com/github/pedrovgs/Longest_Palindrome_Subsequence new file mode 100644 index 00000000..3492c26e --- /dev/null +++ b/src/main/java/com/github/pedrovgs/Longest_Palindrome_Subsequence @@ -0,0 +1,27 @@ +public class Longest_Palindrome_Subsequence { +static int max(int x, int y) { +if(x>y) +return x; +else +return y; +} +static int lps(char s[], int i, int j) { + +if (i == j) { +return 1; +} +if (s[i] == s[j] && i + 1 == j) { +return 2; +} +if (s[i] == s[j]) { +return lps(s, i + 1, j - 1) + 2; +} +return max(lps(s, i, j - 1), lps(s, i + 1, j)); +} +public static void main(String[] args) { +String s = "ABBDCACBAD"; +int n = s.length(); +System.out.print("The longest palindrome subsequence is "+l +ps(s.toCharArray(), 0, n - 1)); +} +}