Camel case of a given sentence
Given a sentence, task is to remove spaces from the sentence and rewrite in Camel case. It is a style of writing where we don’t have spaces and all words begin with capital letters.
Examples:
Input : I got intern at geeksforgeeks Output : IGotInternAtGeeksforgeeks Input : Here comes the garden Output : HereComesTheGarden
Simple solution: First method is to traverse sentence and one by one remove spaces by moving subsequent characters one position back and changing case of first character to capital. It takes O(n*n) time.
Efficient solution : We traverse given string, while traversing we copy non space character to result and whenever we encounter space, we ignore it and change next letter to capital.
Below is code implementation
C++
// CPP program to convert given sentence /// to camel case. #include <bits/stdc++.h> using namespace std; // Function to remove spaces and convert // into camel case string convert(string s) { int n = s.length(); int res_ind = 0; for ( int i = 0; i < n; i++) { // check for spaces in the sentence if (s[i] == ' ' ) { // conversion into upper case s[i + 1] = toupper (s[i + 1]); continue ; } // If not space, copy character else s[res_ind++] = s[i]; } // return string to main return s.substr(0, res_ind); } // Driver program int main() { string str = "I get intern at geeksforgeeks" ; cout << convert(str); return 0; } |
Java
// Java program to convert given sentence /// to camel case. class GFG { // Function to remove spaces and convert // into camel case static String convert(String s) { // to count spaces int cnt= 0 ; int n = s.length(); char ch[] = s.toCharArray(); int res_ind = 0 ; for ( int i = 0 ; i < n; i++) { // check for spaces in the sentence if (ch[i] == ' ' ) { cnt++; // conversion into upper case ch[i + 1 ] = Character.toUpperCase(ch[i + 1 ]); continue ; } // If not space, copy character else ch[res_ind++] = ch[i]; } // new string will be reduced by the // size of spaces in the original string return String.valueOf(ch, 0 , n - cnt); } // Driver code public static void main(String args[]) { String str = "I get intern at geeksforgeeks" ; System.out.println(convert(str)); } } // This code is contributed by gp6. |
Python
# Python program to convert # given sentence to camel case. # Function to remove spaces # and convert into camel case def convert(s): if ( len (s) = = 0 ): return s1 = '' s1 + = s[ 0 ].upper() for i in range ( 1 , len (s)): if (s[i] = = ' ' ): s1 + = s[i + 1 ].upper() i + = 1 elif (s[i - 1 ] ! = ' ' ): s1 + = s[i] print (s1) # Driver Code def main(): s = "I get intern at geeksforgeeks" convert(s) if __name__ = = "__main__" : main() # This code is contributed # prabhat kumar singh |
C#
// C# program to convert given sentence // to camel case. using System; class GFG { // Function to remove spaces and convert // into camel case static void convert(String s) { // to count spaces int cnt= 0; int n = s.Length; char []ch = s.ToCharArray(); int res_ind = 0; for ( int i = 0; i < n; i++) { // check for spaces in the sentence if (ch[i] == ' ' ) { cnt++; // conversion into upper case ch[i + 1] = char .ToUpper(ch[i + 1]); continue ; } // If not space, copy character else ch[res_ind++] = ch[i]; } // new string will be reduced by the // size of spaces in the original string for ( int i = 0; i < n - cnt; i++) Console.Write(ch[i]); } // Driver code public static void Main(String []args) { String str = "I get intern at geeksforgeeks" ; convert(str); } } // This code is contributed by 29AjayKumar |
Javascript
<script> // Function to remove spaces and convert // into camel case function convert( s) { var n = s.length; var str= "" ; for ( var i = 0; i < n; i++) { // check for spaces in the sentence if (s[i] == ' ' ) { // conversion into upper case str+= s[i+1].toUpperCase(); i++; } // If not space, copy character else { str+= s[i]; } } // return string to main return str; } var str = "I get intern at geeksforgeeks" ; document.write(convert(str)); </script> |
IGetInternAtGeeksforgeeks
Time complexity: O(n) //since one traversal of the string is required to complete all operations hence the overall time required by the algorithm is linear
Auxiliary Space: O(1) //since no extra array is used, the space taken by the algorithm is constant
This article is contributed by Himanshu Ranjan. If you like GeeksforGeeks and would like to contribute, you can also write an article using write.geeksforgeeks.org or mail your article to review-team@geeksforgeeks.org. See your article appearing on the GeeksforGeeks main page and help other Geeks.
Please Login to comment...