First uppercase letter in a string (Iterative and Recursive)
Given a string find its first uppercase letter
Examples :
Input : geeksforgeeKs Output : K Input : geekS Output : S
Method 1: linear search
Using linear search, find the first character which is capital
C++
// C++ program to find the first // uppercase letter using linear search #include <bits/stdc++.h> using namespace std; // Function to find string which has // first character of each word. char first(string str) { for ( int i = 0; i < str.length(); i++) if ( isupper (str[i])) return str[i]; return 0; } // Driver code int main() { string str = "geeksforGeeKS" ; char res = first(str); if (res == 0) cout << "No uppercase letter" ; else cout << res << "\n" ; return 0; } |
Java
// Java program to find the first // uppercase letter using linear search import java.io.*; import java.util.*; class GFG { // Function to find string which has // first character of each word. static char first(String str) { for ( int i = 0 ; i < str.length(); i++) if (Character.isUpperCase(str.charAt(i))) return str.charAt(i); return 0 ; } // Driver program public static void main(String args[]) { String str = "geeksforGeeKS" ; char res = first(str); if (res == 0 ) System.out.println( "No uppercase letter" ); else System.out.println(res); } } // This code is contributed // by Nikita Tiwari. |
Python3
# Python3 program to find the first # uppercase letter using linear search # Function to find string which has # first character of each word. def first(word) : for i in range ( 0 , len (word)) : if (word[i].isupper()) : return word[i] return "No uppercase letter :(" # Driver code word = "geeksforgeeS" print (first(word)) # This code is contributed by Anshul Suresh |
C#
// C# program to find the first uppercase // letter using linear search using System; class GFG { // Function to find string which has // first character of each word. static char first( string str) { for ( int i = 0; i < str.Length; i++) if ( char .IsUpper(str[i]) ) return str[i]; return '0' ; } // Driver function public static void Main() { string str = "geeksforGeeKS" ; char res = first(str); if (res == '0' ) Console.WriteLine( "No uppercase" + " letter" ); else Console.WriteLine(res); } } // This code is contributed by Sam007 |
PHP
<?php // PHP program to find the first // uppercase letter using linear search // Function to find string which has // first character of each word. function first( $str ) { for ( $i = 0; $i < strlen ( $str ); $i ++) if (ctype_upper( $str [ $i ])) { return $str [ $i ]; } return 0; } // Driver code $str = "geeksforGeeKS" ; $res = first( $str ); if (ord( $res ) ==ord(0) ) echo "No uppercase letter" ; else echo $res . "\n" ; // This code is contributed by Sam007 ?> |
Javascript
<script> // JavaScript program to find the first // uppercase letter using linear search // Function to find string which has // first character of each word. function first(str) { for ( var i = 0; i < str.length; i++) if (str[i] === str[i].toUpperCase()) return str[i]; return 0; } // Driver code var str = "geeksforGeeKS" ; var res = first(str); if (res == 0) document.write( "No uppercase letter" ); else { document.write(res); document.write( "<br>" ); } // This code is contributed by rdtank. </script> |
Output:
G
Time Complexity : O(N)
Auxiliary Space: O(1)
Method 2 (Using recursion)
Recursively traverse the string and if any uppercase is found return that character
C++
// C++ program to find the // first uppercase letter. #include <bits/stdc++.h> using namespace std; // Function to find string which has // first character of each word. char first(string str, int i=0) { if (str[i] == '\0' ) return 0; if ( isupper (str[i])) return str[i]; return first(str, i+1); } // Driver code int main() { string str = "geeksforGeeKS" ; char res = first(str); if (res == 0) cout << "No uppercase letter" ; else cout << res << "\n" ; return 0; } |
Java
// Java program to find the // first uppercase letter. import java.io.*; class GFG { // Function to find string which has // first character of each word. static char first(String str, int i) { if (str.charAt(i)== '\0' ){ return 0 ; } if (Character.isUpperCase(str.charAt(i))) { return str.charAt(i); } try { return first(str, i + 1 ); } catch (Exception e){ System.out.println( "Exception occurs" ); } return 0 ; } // Driver code public static void main(String args[]) { String str = "geeksforGeeKS" ; char res = first(str, 0 ); if (res == 0 ) System.out.println( "No uppercase letter" ); else System.out.println (res ); } } // This code is contributed // by Shravan Sutar(suthar826) |
Python 3
def firstUpperCase(word,index): """"Recursively traverse from start of string to end, If character is upper return it. """ if index = = len (word): #if no upperCase letter found in string return "No UpperCase letter found." return "No UpperCase letter found." if word[index].isupper(): return word[n] return firstUpperCase(word,index + 1 ) word = "geeksforGeekS" print (firstUpperCase(word, 0 )) |
C#
// C# program to find the // first uppercase letter. using System; class GFG { // Function to find string // which has first character // of each word. static char first( string str, int i) { if (str[i] == '\0' ) return '0' ; if ( char .IsUpper(str[i])) return (str[i]); return first(str, i + 1); } // Driver code static public void Main () { string str = "geeksforGeeKS" ; char res = first(str, 0); if (res == 0) Console.WriteLine( "No uppercase letter" ); else Console.WriteLine(res ); } } // This code is contributed by Anuj_67. |
PHP
<?php //PHP program to find the // first uppercase letter. // Function to find string // which has first character // of each word. function first( $str , $i = 0) { if ( $str [ $i ] == '\0' ) return 0; if (ctype_upper( $str [ $i ])) return $str [ $i ]; return first( $str , $i +1); } // Driver code $str = "geeksforGeeKS" ; $res = first( $str ); if (ord( $res ) ==ord(0)) echo "No uppercase letter" ; else echo $res , "\n" ; // This code is contributed // by m_kit ?> |
Javascript
<script> // Javascript program to find the // first uppercase letter. // Function to find string which has // first character of each word. function first(str,i=0) { if (i == str.length) return 0; if (str[i] == str[i].toUpperCase()) return str[i]; return first(str, i+1); } // Driver code var str = "geeksforGeeKS" ; var res = first(str); if (res == 0) document.write( "No uppercase letter" ); else document.write( res + "<br>" ); </script> |
Output :
G
Time Complexity : O(N)
Auxiliary Space: O(N) for call stack
Please Login to comment...