Check whether the vowels in a string are in alphabetical order or not - GeeksforGeeks

03 May, 2021
Given a string ‘str’, the task is to find whether the vowels in the string are in alphabetical order or not. The string contains only lowercase alphabets.
Examples: 
Input: str = "aabbbddeecc"
Output: Vowels are in alphabetical order
The vowel characters in the string are : a, a, e, e 
which are in sorted order.

Input: str = "aabbbdideecc"
Output: Vowels are not in alphabetical order
Approach: 
Traverse the array and find the characters which are vowels.
If any vowel is less than the vowel which occurred previously in the array then print Vowels are not in alphabetical order.
Else, print Vowels are in alphabetical order.
Below is the implementation of the above approach:  
C++
Java
Python 3
C#
PHP
Javascript
// C++ implementation of above approach#include <bits/stdc++.h>using namespace std; // Function that checks whether the vowel// characters in a string are// in alphabetical order or notbool areVowelsInOrder(string s){    int n = s.length();     // ASCII Value 64 is less than    // all the alphabets    // so using it as a default value    char c = (char)64;     // check if the vowels in    // the string are sorted or not    for (int i = 0; i < n; i++) {        if (s[i] == 'a' || s[i] == 'e' || s[i] == 'i'            || s[i] == 'o' || s[i] == 'u') {             // if the vowel is smaller            // than the previous vowel            if (s[i] < c)                return false;            else {                 // store the vowel                c = s[i];            }        }    }    return true;} // Driver codeint main(){    string s = "aabbbddeecc";     // check whether the vowel    // characters in a string are    // in alphabetical order or not    if (areVowelsInOrder(s))        cout << "Yes";    else        cout << "No";     return 0;}
// Java implementation of above approach import java.io.*; class GFG {     // Function that checks whether the vowel    // characters in a string are    // in alphabetical order or not    static boolean areVowelsInOrder(String s)    {        int n = s.length();         // ASCII Value 64 is less than        // all the alphabets        // so using it as a default value        char c = (char)64;         // check if the vowels in        // the string are sorted or not        for (int i = 0; i < n; i++) {            if (s.charAt(i) == 'a' || s.charAt(i) == 'e'                || s.charAt(i) == 'i' || s.charAt(i) == 'o'                || s.charAt(i) == 'u') {                 // if the vowel is smaller than the previous                // vowel                if (s.charAt(i) < c)                    return false;                else {                     // store the vowel                    c = s.charAt(i);                }            }        }        return true;    }     // Driver code    public static void main(String[] args)    {        String s = "aabbbddeecc";         // check whether the vowel        // characters in a string are        // in alphabetical order or not        if (areVowelsInOrder(s))            System.out.print("Yes");        else            System.out.print("No");    }} // This Code is contributed// by anuj_67....
# Python3 implementation of# above approach # Function that checks whether the vowel# characters in a string are# in alphabetical order or not  def areVowelsInOrder(s):     n = len(s)     # ASCII Value 64 is less than    # all the alphabets    # so using it as a default value    c = chr(64)     # check if the vowels in    # the string are sorted or not    for i in range(0, n):         if (s[i] == 'a' or s[i] == 'e' or s[i] ==                'i' or s[i] == 'o' or s[i] == 'u'):             # if the vowel is smaller            # than the previous vowel            if s[i] < c:                return False            else:                 # store the vowel                c = s[i]     return True  # Driver codeif __name__ == "__main__":     s = "aabbbddeecc"     # check whether the vowel    # characters in a string are    # in alphabetical order or not    if areVowelsInOrder(s):        print("Yes")     else:        print("No") # This code is contributed by# ANKITRAI1
// C# implementation of above approachusing System; class GFG {     // Function that checks whether the vowel    // characters in a string are    // in alphabetical order or not    public static bool areVowelsInOrder(string s)    {        int n = s.Length;         // ASCII Value 64 is less than        // all the alphabets        // so using it as a default value        char c = (char)64;         // check if the vowels in        // the string are sorted or not        for (int i = 0; i < n; i++) {            if (s[i] == 'a' || s[i] == 'e' || s[i] == 'i'                || s[i] == 'o' || s[i] == 'u') {                 // if the vowel is smaller                // than the previous vowel                if (s[i] < c) {                    return false;                }                else {                     // store the vowel                    c = s[i];                }            }        }        return true;    }     // Driver code    public static void Main(string[] args)    {        string s = "aabbbddeecc";         // check whether the vowel        // characters in a string are        // in alphabetical order or not        if (areVowelsInOrder(s)) {            Console.Write("Yes");        }         else {            Console.Write("No");        }    }} // This code is contributed// by Shrikant13
<?php// PHP implementation of above approach // Function that checks whether the vowel// characters in a string are// in alphabetical order or notfunction areVowelsInOrder($s){    $n = strlen($s);     // ASCII Value 64 is less than    // all the alphabets    // so using it as a default value    $c = chr(64);     // check if the vowels in    // the string are sorted or not    for ($i = 0; $i < $n; $i++)    {        if ($s[$i] == 'a' || $s[$i] == 'e' ||            $s[$i] == '$i' || $s[$i] == 'o' ||            $s[$i] == 'u')        {             // if the vowel is smaller            // than the previous vowel            if ($s[$i] < $c)                return false;                else {                 // store the vowel                $c = $s[$i];            }        }    }    return true;} // Driver code$s = "aabbbddeecc"; // check whether the vowel// characters in a string are// in alphabetical order or notif (areVowelsInOrder($s))    echo "Yes";else    echo "No";     // This code is contributed by ihritik?>
<script>// Javascript implementation of above approach // Function that checks whether the vowel// characters in a string are// in alphabetical order or notfunction areVowelsInOrder(s){    var n = s.length;     // ASCII Value 64 is less than    // all the alphabets    // so using it as a default value    var c = String.fromCharCode(64);         // check if the vowels in    // the string are sorted or not    for (var i = 0; i < n; i++) {        if (s[i] == 'a' || s[i] == 'e' || s[i] == 'i'            || s[i] == 'o' || s[i] == 'u') {             // if the vowel is smaller            // than the previous vowel            if (s[i] < c)                return false;            else {                 // store the vowel                c = s[i];            }        }    }    return true;} var s = "aabbbddeecc";// check whether the vowel// characters in a string are// in alphabetical order or notif (areVowelsInOrder(s))   document.write("Yes");else   document.write("No"); //This code is contributed by SoumikMondal</script>
Yes
 
Time Complexity: O(N) Auxiliary Space: O(1)
vt_m
shrikanth13
ankthon
ihritik
rkggupta1998
subhammahato348
SoumikMondal
vowel-consonant
Competitive Programming
Strings
Strings
Writing code in comment?
Please use ide.geeksforgeeks.org,
generate link and share the link here.
Prefix Sum Array - Implementation and Applications in Competitive Programming
Ordered Set and GNU C++ PBDS
Modulo 10^9+7 (1000000007)
Bits manipulation (Important tactics)
What is Competitive Programming and How to Prepare for It?
Write a program to reverse an array or string
Reverse a string in Java
Write a program to print all permutations of a given string
C++ Data Types
Longest Common Subsequence | DP-4