Given a sequence, print a longest palindromic subsequence of it.
Input : BBABCBCAB Output : BABCBAB The above output is the longest palindromic subsequence of given sequence. "BBBBB" and "BBCBB" are also palindromic subsequences of the given sequence, but not the longest ones. Input : GEEKSFORGEEKS Output : Output can be either EEKEE or EESEE or EEGEE, ..
We have discussed a solution in below post to find length of longest palindromic subsequence.
Dynamic Programming | Set 12 (Longest Palindromic Subsequence)
In this post a solution to print the longest palindromic subsequence is discussed.
This problem is close to the Longest Common Subsequence (LCS) problem. In fact, we can use LCS as a subroutine to solve this problem. Following is the two step solution that uses LCS.
1) Reverse the given sequence and store the reverse in another array say rev[0..n-1]
2) LCS of the given sequence and rev will be the longest palindromic sequence.
3) Once we have found LCS, we can print the LCS.
- Print longest palindrome word in a sentence
- Longest palindrome subsequence with O(n) space
- Program for Bridge and Torch problem
- Count All Palindromic Subsequence in a given String
- Find minimum number of coins that make a given value
- Manacher's Algorithm - Linear Time Longest Palindromic Substring - Part 1
- Printing Longest Common Subsequence
- Longest Palindromic Substring | Set 2
- Longest Palindromic Substring | Set 1
- Variations of LIS | DP-21
- Cutting a Rod | DP-13
- Longest Palindromic Subsequence | DP-12
- 0-1 Knapsack Problem | DP-10
- Coin Change | DP-7
- Longest Common Subsequence | DP-4
This article is contributed by Kartik. If you like GeeksforGeeks and would like to contribute, you can also write an article using contribute.geeksforgeeks.org or mail your article to firstname.lastname@example.org. See your article appearing on the GeeksforGeeks main page and help other Geeks.
Please Improve this article if you find anything incorrect by clicking on the "Improve Article" button below.