Given a string str containing only alphabets, the task is to print the longest subsequence of the string str containing only vowels.
Examples:
Input: str = “neveropen”
Output: eeoee
Explanation:
“eeoee” is the longest subsequence of the string containing only vowels.
Input: str = “HelloWorld”
Output: eoo
Explanation:
“eeo” is the longest subsequence of the string containing only vowels.
Approach:
- Traverse through the given string character by character.
- If the character is a vowel, append it to the resultant string.
- When the traversal completes, the required longest subsequence containing only vowels is stored in the resultant string.
Below is the implementation of the above approach:
C++
// C++ program to find the longest // subsequence containing only vowels #include <bits/stdc++.h> using namespace std; // Function to check whether // a character is vowel or not bool isVowel( char x) { x = tolower (x); // Returns true if x is vowel return (x == 'a' || x == 'e' || x == 'i' || x == 'o' || x == 'u' ); } // Function to find the longest subsequence // which contain all vowels string longestVowelSubsequence(string str) { string answer = "" ; // Length of the string int n = str.size(); // Iterating through the string for ( int i = 0; i < n; i++) { // Checking if the character is a // vowel or not if (isVowel(str[i])) { // If it is a vowel, then add it // to the final string answer += str[i]; } } return answer; } // Driver code int main() { string str = "neveropen" ; cout << longestVowelSubsequence(str) << endl; return 0; } |
Java
// Java program to find the longest // subsequence containing only vowels class GFG{ // Function to check whether // a character is vowel or not static boolean isVowel( char x) { x = Character.toLowerCase(x); // Returns true if x is vowel return (x == 'a' || x == 'e' || x == 'i' || x == 'o' || x == 'u' ); } // Function to find the longest subsequence // which contain all vowels static String longestVowelSubsequence(String str) { String answer = "" ; // Length of the String int n = str.length(); // Iterating through the String for ( int i = 0 ; i < n; i++) { // Checking if the character is a // vowel or not if (isVowel(str.charAt(i))) { // If it is a vowel, then add it // to the final String answer += str.charAt(i); } } return answer; } // Driver code public static void main(String[] args) { String str = "neveropen" ; System.out.print(longestVowelSubsequence(str) + "\n" ); } } // This code is contributed by 29AjayKumar |
Python 3
# Python 3 program to find the longest # subsequence containing only vowels # Function to check whether # a character is vowel or not def isVowel(x): # Returns true if x is vowel return (x = = 'a' or x = = 'e' or x = = 'i' or x = = 'o' or x = = 'u' ) # Function to find the longest subsequence # which contain all vowels def longestVowelSubsequence( str ): answer = "" # Length of the string n = len ( str ) # Iterating through the string for i in range (n): # Checking if the character is a # vowel or not if (isVowel( str [i])): # If it is a vowel, then add it # to the final string answer + = str [i] return answer # Driver code str = "neveropen" print (longestVowelSubsequence( str )) # This code is contributed by apurva raj |
C#
// C# program to find the longest // subsequence containing only vowels using System; class GFG{ // Function to check whether // a character is vowel or not static bool isVowel( char x) { x = char .ToLower(x); // Returns true if x is vowel return (x == 'a' || x == 'e' || x == 'i' || x == 'o' || x == 'u' ); } // Function to find the longest subsequence // which contain all vowels static String longestVowelSubsequence(String str) { String answer = "" ; // Length of the String int n = str.Length; // Iterating through the String for ( int i = 0; i < n; i++) { // Checking if the character is a // vowel or not if (isVowel(str[i])) { // If it is a vowel, then add it // to the readonly String answer += str[i]; } } return answer; } // Driver code public static void Main(String[] args) { String str = "neveropen" ; Console.Write(longestVowelSubsequence(str)+ "\n" ); } } // This code is contributed by Princi Singh |
Javascript
<script> // Javascript program to find the longest // subsequence containing only vowels // Function to check whether // a character is vowel or not function isVowel(x) { x = (x.toLowerCase()); // Returns true if x is vowel return (x == 'a' || x == 'e' || x == 'i' || x == 'o' || x == 'u' ); } // Function to find the longest subsequence // which contain all vowels function longestVowelSubsequence(str) { var answer = "" ; // Length of the string var n = str.length; // Iterating through the string for ( var i = 0; i < n; i++) { // Checking if the character is a // vowel or not if (isVowel(str[i])) { // If it is a vowel, then add it // to the final string answer += str[i]; } } return answer; } // Driver code var str = "neveropen" ; document.write( longestVowelSubsequence(str)); // This code is contributed by importantly. </script> |
eeoee
Time Complexity: O(N)
Auxiliary Space: O(N), The extra space is used to store the result.
Ready to dive in? Explore our Free Demo Content and join our DSA course, trusted by over 100,000 neveropen!