Caso camello de una oración dada

Dada una oración, la tarea es eliminar los espacios de la oración y reescribir en el caso Camel . Es un estilo de escritura donde no tenemos espacios y todas las palabras comienzan con mayúsculas.
Ejemplos: 
 

Input  : I got intern at geeksforgeeks
Output : IGotInternAtGeeksforgeeks

Input :  Here comes the garden
Output : HereComesTheGarden

Solución simple: el primer método es recorrer la oración y eliminar espacios uno por uno moviendo los caracteres subsiguientes una posición hacia atrás y cambiando el caso del primer carácter a mayúscula. Toma O(n*n) tiempo.
Solución eficiente: recorremos la string dada, mientras recorremos copiamos el carácter que no es espacio en el resultado y cada vez que encontramos espacio, lo ignoramos y cambiamos la siguiente letra a mayúscula.
A continuación se muestra la implementación del código. 
 

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>

Publicación traducida automáticamente

Artículo escrito por himanshu_300 y traducido por Barcelona Geeks. The original can be accessed here. Licence: CCBY-SA

Deja una respuesta

Tu dirección de correo electrónico no será publicada. Los campos obligatorios están marcados con *