Skip to content
geeksforgeeks
  • Tutorials
    • Python
    • Java
    • Data Structures & Algorithms
    • ML & Data Science
    • Interview Corner
    • Programming Languages
    • Web Development
    • CS Subjects
    • DevOps And Linux
    • School Learning
    • Practice Coding Problems
  • Courses
    • DSA to Development
    • Get IBM Certification
    • Newly Launched!
      • Master Django Framework
      • Become AWS Certified
    • For Working Professionals
      • Interview 101: DSA & System Design
      • Data Science Training Program
      • JAVA Backend Development (Live)
      • DevOps Engineering (LIVE)
      • Data Structures & Algorithms in Python
    • For Students
      • Placement Preparation Course
      • Data Science (Live)
      • Data Structure & Algorithm-Self Paced (C++/JAVA)
      • Master Competitive Programming (Live)
      • Full Stack Development with React & Node JS (Live)
    • Full Stack Development
    • Data Science Program
    • All Courses
  • DSA
  • Interview Problems on String
  • Practice String
  • MCQs on String
  • Tutorial on String
  • String Operations
  • Sort String
  • Substring & Subsequence
  • Iterate String
  • Reverse String
  • Rotate String
  • String Concatenation
  • Compare Strings
  • KMP Algorithm
  • Boyer-Moore Algorithm
  • Rabin-Karp Algorithm
  • Z Algorithm
  • String Guide for CP
Open In App
Next Article:
Remove spaces from a given string
Next article icon

Remove spaces from a given string

Last Updated : 06 Dec, 2024
Comments
Improve
Suggest changes
Like Article
Like
Report
Try it on GfG Practice
redirect icon

Given a string, remove all spaces from the string and return it. 

Input: "g eeks for ge eeks "
Output: "geeksforgeeks"

Input: "abc d "
Output: "abcd"

Expected time complexity is O(n) and only one traversal of string. 

Below is a Simple Solution 

1) Iterate through all characters of given string, do following    a) If current character is a space, then move all subsequent       characters one position back and decrease length of the        result string.

Time complexity of above solution is O(n2).

A Better Solution can solve it in O(n) time. The idea is to keep track of count of non-space character seen so far. 

1) Initialize 'count' = 0 (Count of non-space character seen so far) 2) Iterate through all characters of given string, do following      a) If current character is non-space, then put this character         at index 'count' and increment 'count' 3) Finally, put '\0' at index 'count'

Below is the implementation of above algorithm. 

C++
// An efficient C++ program to remove all spaces // from a string #include <iostream> using namespace std;  // Function to remove all spaces from a given string void removeSpaces(char *str) {     // To keep track of non-space character count     int count = 0;      // Traverse the given string. If current character     // is not space, then place it at index 'count++'     for (int i = 0; str[i]; i++)         if (str[i] != ' ')             str[count++] = str[i]; // here count is                                    // incremented     str[count] = '\0'; }  // Driver program to test above function int main() {     char str[] = "g  eeks   for ge  eeks  ";     removeSpaces(str);     cout << str;     return 0; } 
Java
     // An efficient Java program to remove all spaces // from a string class GFG {  // Function to remove all spaces  // from a given string static int removeSpaces(char []str) {     // To keep track of non-space character count     int count = 0;      // Traverse the given string.     // If current character     // is not space, then place      // it at index 'count++'     for (int i = 0; i<str.length; i++)         if (str[i] != ' ')             str[count++] = str[i]; // here count is                                     // incremented              return count; }  // Driver code public static void main(String[] args) {     char str[] = "g eeks for ge eeks ".toCharArray();     int i = removeSpaces(str);     System.out.println(String.valueOf(str).subSequence(0, i)); } }   // This code is contributed by Rajput-Ji 
Python
# Python program to Remove spaces from a given string  # Function to remove all spaces from a given string def removeSpaces(string):      # To keep track of non-space character count     count = 0      list = []      # Traverse the given string. If current character     # is not space, then place it at index 'count++'     for i in xrange(len(string)):         if string[i] != ' ':             list.append(string[i])      return toString(list)  # Utility Function def toString(List):     return ''.join(List)  # Driver program string = "g  eeks  for ge  eeks  " print removeSpaces(string)  # This code is contributed by Bhavya Jain 
C#
// An efficient C# program to remove all  // spaces from a string  using System;  class GFG  {   // Function to remove all spaces  // from a given string  static int removeSpaces(char []str)  {      // To keep track of non-space      // character count      int count = 0;       // Traverse the given string. If current     // character is not space, then place      // it at index 'count++'      for (int i = 0; i < str.Length; i++)          if (str[i] != ' ')              str[count++] = str[i]; // here count is                                     // incremented       return count;  }   // Driver code  public static void Main(String[] args)  {      char []str = "g eeks for ge eeks ".ToCharArray();      int i = removeSpaces(str);      Console.WriteLine(String.Join("", str).Substring(0, i));  }  }   // This code is contributed by 29AjayKumar 
JavaScript
<script>        // An efficient JavaScript program to remove all       // spaces from a string              // Function to remove all spaces       // from a given string       function removeSpaces(str) {         // To keep track of non-space         // character count         var count = 0;          // Traverse the given string. If current         // character is not space, then place         // it at index 'count++'         for (var i = 0; i < str.length; i++)           if (str[i] !== " ") str[count++] = str[i];           // here count is         // incremented          return count;       }        // Driver code       var str = "g eeks for ge eeks ".split("");       var i = removeSpaces(str);       document.write(str.join("").substring(0, i));        </script> 

Output
geeksforgeeeks

Time complexity of above solution is O(n) and it does only one traversal of string. 

Auxiliary Space: O(1)
Another solution suggested by Divyam Madaan is to use predefined functions. Here is the implementation: 

C++
// CPP program to Remove spaces  // from a given string   #include <iostream>  #include <algorithm>  using namespace std;   // Function to remove all spaces from a given string  string removeSpaces(string str)  {      str.erase(remove(str.begin(), str.end(), ' '), str.end());      return str;  }   // Driver program to test above function  int main()  {      string str = "g eeks for ge eeks ";      str = removeSpaces(str);      cout << str;      return 0;  }   // This code is contributed by Divyam Madaan  
Java
// Java program to remove  // all spaces from a string  class GFG {          // Function to remove all      // spaces from a given string     static String removeSpace(String str)     {         str = str.replaceAll("\\s","");         return str;     }      // Driver Code     public static void main(String args[])     {         String str = "g eeks for ge eeks ";         System.out.println(removeSpace(str));     } }  // This code is contributed by Kanhaiya. 
Python
# Python program to Remove spaces from a given string   # Function to remove all spaces from a given string def removeSpaces(string):     string = string.replace(' ','')     return string      # Driver program string = "g  eeks  for ge  eeks  " print(removeSpaces(string))  # This code is contributed by Divyam Madaan 
C#
// C# program to remove  // all spaces from a string  using System;  class GFG  {           // Function to remove all      // spaces from a given string      static String removeSpace(String str)      {          str = str.Replace(" ","");          return str;      }       // Driver Code      public static void Main()      {          String str = "g eeks for ge eeks ";          Console.WriteLine(removeSpace(str));      }  }   // This code is contributed by  // PrinciRaj1992  
JavaScript
<script> // javascript program to remove  // all spaces from a string     // Function to remove all     // spaces from a given string      function removeSpace( str)      {         str = str.replace(/\s/g,'')         return str;     }      // Driver Code             var str = "g eeks for ge eeks ";         document.write(removeSpace(str));  // This code contributed by aashish1995 </script> 

Output
geeksforgeeeks

Another method to solve this problem using predefined STL functions like count() ,remove() ,getline() and resize() is also present. Here is the implementation for the same :

C++
#include <bits/stdc++.h> using namespace std; int main() {     string s = "g e e k s f o r g e e k s";      cout << "string with spaces is " << s << endl;      int l = s.length(); // storing the length of the string      int c         = count(s.begin(), s.end(),                 ' '); // counting the number of whitespaces      remove(s.begin(), s.end(),            ' '); // removing all the whitespaces      s.resize(l - c); // resizing the string to l-c      cout << "string without spaces is " << s << endl;      return 0; } 
Java
import java.util.*; import java.io.*;  public class Main { public static void main(String[] args) { String s = "g e e k s f o r g e e k s"; System.out.println("string with spaces is " + s);       int l = s.length(); // storing the length of the string      int c = (int) s.chars().filter(ch -> ch == ' ').count(); // counting the number of whitespaces      s = s.replace(" ", ""); // removing all the whitespaces      s = s.substring(0, l - c); // resizing the string to l-c      System.out.println("string without spaces is " + s); } } 
Python
s = "g e e k s f o r g e e k s"  print("string with spaces is", s)  l = len(s)  # storing the length of the string  c = s.count(' ')  # counting the number of whitespaces  s = s.replace(' ', '')  # removing all the whitespaces  s = s[:l - c]  # resizing the string to l-c  print("string without spaces is", s) 
C#
// C# program for the above approach  using System;  public class GFG {     public static void Main(string[] args) {         string s = "g e e k s f o r g e e k s";         Console.WriteLine("string with spaces is " + s);         int l = s.Length; // storing the length of the string              int c = s.Split(' ').Length - 1; // counting the number of whitespaces              s = s.Replace(" ", ""); // removing all the whitespaces              s = s.Substring(0, l - c); // resizing the string to l-c              Console.WriteLine("string without spaces is " + s);     } }  // This code is contributed by princekumaras 
JavaScript
// JavaScript program for the above approach  let s = "g e e k s f o r g e e k s"; console.log("string with spaces is " + s);  let l = s.length; // storing the length of the string  let c = s.split(' ').length - 1; // counting the number of whitespaces  s = s.replace(/\s/g, ""); // removing all the whitespaces  s = s.substring(0, l - c); // resizing the string to l-c  console.log("string without spaces is " + s); 

Output
string with spaces is g e e k s f o r g e e k s string without spaces is geeksforgeeks

Time Complexity : O(N), N is length of given string.

Auxiliary Space : O(1),  since no extra space is used.


Next Article
Remove spaces from a given string

K

kartik
Improve
Article Tags :
  • Strings
  • DSA
  • Amazon
  • SAP Labs
Practice Tags :
  • Amazon
  • SAP Labs
  • Strings

Similar Reads

    Remove "b" and "ac" from a given string
    Given a string, eliminate all "b" and "ac" in the string, you have to replace them in-place, and you are only allowed to iterate over the string once. (Source Google Interview Question) Examples: acbac ==> "" aaac ==> aa ababac ==> aa bbbbd ==> dWe strongly recommend that you click here
    12 min read
    Program to remove HTML tags from a given String
    Given a string str that contains some HTML tags, the task is to remove all the tags present in the given string str. Examples: Input: str = "<div><b>Geeks for Geeks</b></div>" Output: Geeks for GeeksInput: str = "<a href="https://www.geeksforgeeks.org/">GFG</a>" O
    3 min read
    Remove last occurrence of a word from a given sentence string
    Given two strings S and W of sizes N and M respectively, the task is to remove the last occurrence of W from S. If there is no occurrence of W in S, print S as it is. Examples: Input: S = “This is GeeksForGeeks”, W="Geeks"Output: This is GeeksForExplanation:The last occurrence of “Geeks” in the stri
    11 min read
    Remove the forbidden strings
    Given a string W, change the string in such a way that it does not contain any of the "forbidden" strings S1 to Sn as one of its substrings. The rules that govern this change are as follows: Case of the characters does not matter i.e "XyZ" is the same as "xYZ". Change all the characters that are cov
    15+ min read
    Print reverse string after removing vowels
    Given a string s, print reverse of string and remove the characters from the reversed string where there are vowels in the original string. Examples: Input : geeksforgeeksOutput : segrfsegExplanation :Reversed string is skeegrofskeeg, removing characters from indexes 1, 2, 6, 9 & 10 (0 based ind
    13 min read
geeksforgeeks-footer-logo
Corporate & Communications Address:
A-143, 7th Floor, Sovereign Corporate Tower, Sector- 136, Noida, Uttar Pradesh (201305)
Registered Address:
K 061, Tower K, Gulshan Vivante Apartment, Sector 137, Noida, Gautam Buddh Nagar, Uttar Pradesh, 201305
GFG App on Play Store GFG App on App Store
Advertise with us
  • Company
  • About Us
  • Legal
  • Privacy Policy
  • In Media
  • Contact Us
  • Advertise with us
  • GFG Corporate Solution
  • Placement Training Program
  • Languages
  • Python
  • Java
  • C++
  • PHP
  • GoLang
  • SQL
  • R Language
  • Android Tutorial
  • Tutorials Archive
  • DSA
  • Data Structures
  • Algorithms
  • DSA for Beginners
  • Basic DSA Problems
  • DSA Roadmap
  • Top 100 DSA Interview Problems
  • DSA Roadmap by Sandeep Jain
  • All Cheat Sheets
  • Data Science & ML
  • Data Science With Python
  • Data Science For Beginner
  • Machine Learning
  • ML Maths
  • Data Visualisation
  • Pandas
  • NumPy
  • NLP
  • Deep Learning
  • Web Technologies
  • HTML
  • CSS
  • JavaScript
  • TypeScript
  • ReactJS
  • NextJS
  • Bootstrap
  • Web Design
  • Python Tutorial
  • Python Programming Examples
  • Python Projects
  • Python Tkinter
  • Python Web Scraping
  • OpenCV Tutorial
  • Python Interview Question
  • Django
  • Computer Science
  • Operating Systems
  • Computer Network
  • Database Management System
  • Software Engineering
  • Digital Logic Design
  • Engineering Maths
  • Software Development
  • Software Testing
  • DevOps
  • Git
  • Linux
  • AWS
  • Docker
  • Kubernetes
  • Azure
  • GCP
  • DevOps Roadmap
  • System Design
  • High Level Design
  • Low Level Design
  • UML Diagrams
  • Interview Guide
  • Design Patterns
  • OOAD
  • System Design Bootcamp
  • Interview Questions
  • Inteview Preparation
  • Competitive Programming
  • Top DS or Algo for CP
  • Company-Wise Recruitment Process
  • Company-Wise Preparation
  • Aptitude Preparation
  • Puzzles
  • School Subjects
  • Mathematics
  • Physics
  • Chemistry
  • Biology
  • Social Science
  • English Grammar
  • Commerce
  • World GK
  • GeeksforGeeks Videos
  • DSA
  • Python
  • Java
  • C++
  • Web Development
  • Data Science
  • CS Subjects
@GeeksforGeeks, Sanchhaya Education Private Limited, All rights reserved
We use cookies to ensure you have the best browsing experience on our website. By using our site, you acknowledge that you have read and understood our Cookie Policy & Privacy Policy
Lightbox
Improvement
Suggest Changes
Help us improve. Share your suggestions to enhance the article. Contribute your expertise and make a difference in the GeeksforGeeks portal.
geeksforgeeks-suggest-icon
Create Improvement
Enhance the article with your expertise. Contribute to the GeeksforGeeks community and help create better learning resources for all.
geeksforgeeks-improvement-icon
Suggest Changes
min 4 words, max Words Limit:1000

Thank You!

Your suggestions are valuable to us.

What kind of Experience do you want to share?

Interview Experiences
Admission Experiences
Career Journeys
Work Experiences
Campus Experiences
Competitive Exam Experiences