Home » Interview Questions » String Interview Questions » Count the number of words

Count the number of words


()

In the given string, find the numbers of words in it. Words can be separated by space (or) new line (or) tab.

Example

Input string : “In the given string”

Output : 4

Time complexity : O(n)

Algorithm

a. Maintain flag, flag = 1 indicates that separator is seen.

b. flag = 0 indicates character in the word.

c. Initialize count = 0.

We increment count when previous flag = 1 and next flag = 0.

d. Return final count.

C++ Program

#include <bits/stdc++.h>

using namespace std;
 
// returns number of words in str
int CountOFWords(char *str)
{
    int flag = 0;
    //Initialize count = 0
    //flag = 0, space
    //flag = 1 character
    int count = 0;
    while(*str)
    {
        //If str is space or tab or new line, // flag is 1
        if (*str == ' ' || *str == 'n' || *str == 't')
            {
                flag = 0;
            }
        //Next after flag = 0 there is flag = 1
        else if (flag == 0)
        {
            flag = 1;
            ++count;
        }
        // Move to next character
        ++str;
    }
 
    return count;
}
 
//Main function
int main()
{
    char str[] = "In given string";
    cout<<CountOFWords(str);
    return 0;
}

Try It

 

How useful was this post?

Click on a star to rate it!

Average rating / 5. Vote Count

No votes so far! Be the first to rate this post.

As you found this post useful...

Follow us on social media!

Array Interview Questions
Graph Interview Questions
LinkedList Interview Questions
String Interview Questions
Tree Interview Questions