Рубрики

C ++ Программа для удаления пробелов из строки

Получив строку, удалите все пробелы из нее. Например, «geek» следует преобразовать в «geek», а «ge» — в «ge».

Идея состоит в том, чтобы проходить строку слева направо и игнорировать пробелы при обходе. Нам нужно отслеживать два индекса, один для текущего символа, красный и другой для текущего индекса в выводе.

// C ++ программа для оценки заданного выражения
#include <iostream>

using namespace std;

  

char *removeSpaces(char *str)

{

    int i = 0, j = 0;

    while (str[i])

    {

        if (str[i] != ' ')

           str[j++] = str[i];

        i++;

    }

    str[j] = '\0';

    return str;

}

  
// Программа драйвера для проверки вышеуказанной функции

int main()

{

    char str1[] = "gee    k   ";

    cout << removeSpaces(str1) << endl;

  

    char str2[] = " g e e k ";

    cout << removeSpaces(str2);

    return 0;

}

Выход:

geek
geek

Временная сложность описанной выше реализации составляет O (n), где n — количество символов во входной строке.

Пожалуйста, напишите комментарии, если вы обнаружите что-то неправильное, или вы хотите поделиться дополнительной информацией по обсуждаемой теме

Рекомендуемые посты:

C ++ Программа для удаления пробелов из строки

0.00 (0%) 0 votes