Friday, September 5, 2025
HomeLanguagesJavaCount of words ending at the given suffix in Java

Count of words ending at the given suffix in Java

Given a string str consisting of a sentence, the task is to find the count of words in the given sentence that end with the given suffix suff.

Examples:  

Input: str = “GeeksForGeeks is a computer science portal for geeks”, suff = “ks” 
Output:
“GeeksForGeeks” and “geeks” are the only words ending with “ks”.

Input: str = “This is a sample string”, suff = “is” 
Output:

Approach:  

  • Extract all the words from the given sentence using the split() method.
  • Now for every word check whether the current words ends with the given suffix using endsWith() method.

Below is the implementation of the above approach:  

C++




// C++ implementation of the approach
#include <bits/stdc++.h>
using namespace std;
 
template <size_t N>
void splitString(string (&arr)[N], string str)
{
    int n = 0;
    istringstream iss(str);
     
    for(auto it = istream_iterator<string>(iss);
             it != istream_iterator<string>() && n < N;
           ++it, ++n)
        arr[n] = *it;
}
 
inline bool ends_with(std::string const& value,
                      std::string const& ending)
{
    if (ending.size() > value.size())
        return false;
         
    return std::equal(ending.rbegin(),
                      ending.rend(),
                      value.rbegin());
}
 
// Function to return the count of words
// in the given sentence that
// end with the given suffix
int endingWith(string str, string suff)
{
     
    // To store the count
    int cnt = 0;
    const int size = 50;
    string words[size];
     
    // Extract words from the sentence
    splitString(words, str);
     
    // For every word
    for(int i = 0; i < size; i++)
    {
         
        // If it ends with the given suffix
        if (ends_with(words[i], suff))
            cnt++;
    }
    return cnt;
}
 
// Driver code
int main()
{
    string str = "GeeksForGeeks is a computer "
                 "science portal for geeks";
    string suff = "ks";
 
    cout << endingWith(str, suff);
}
 
// This code is contributed by pratham76


Java




// Java implementation of the approach
class GFG {
 
    // Function to return the count of words
    // in the given sentence that
    // end with the given suffix
    static int endingWith(String str, String suff)
    {
 
        // To store the count
        int cnt = 0;
 
        // Extract words from the sentence
        String words[] = str.split(" ");
 
        // For every word
        for (int i = 0; i < words.length; i++) {
 
            // If it ends with the given suffix
            if (words[i].endsWith(suff))
                cnt++;
        }
 
        return cnt;
    }
 
    // Driver code
    public static void main(String args[])
    {
        String str = "GeeksForGeeks is a computer"
                     + " science portal for geeks";
        String suff = "ks";
 
        System.out.print(endingWith(str, suff));
    }
}


Python3




# Function declared to
# return the count of words
# in the given sentence that
# end with the given suffix
def endingWith( str , suff ):
     
    # Variable to store count
    c = 0
     
    # split function used to extract words
    # from sentence in form of list
    wrd = str.split(" ")
     
    # using for loop with 'in' to extract
    # elements of list
    for l in wrd:
        if l.endswith(suff):
            c += 1
             
    # returning the count
    return c
 
# Driver Code   
str = "GeeksForGeeks is a computer science portal for geeks"
suff = "ks"
 
# printing the final cde
print(endingWith(str, suff ))
 
# This code is contributed by Animesh_Gupta


C#




// C# implementation of the approach
using System;
class GFG{
  
  // Function to return the count of words
  // in the given sentence that
  // end with the given suffix
  static int endingWith(string str, string suff)
  {
 
    // To store the count
    int cnt = 0;
 
    string []sep = {" "};
 
    // Extract words from the sentence
    string []words = str.Split(sep,
                         StringSplitOptions.RemoveEmptyEntries);
 
    // For every word
    for (int i = 0; i < words.Length; i++)
    {
 
      // If it ends with the given suffix
      if (words[i].EndsWith(suff))
        cnt++;
    }
    return cnt;
  }
 
  // Driver code
  public static void Main(string []args)
  {
    string str = "GeeksForGeeks is a computer" +
                   " science portal for geeks";
    string suff = "ks";
 
    Console.Write(endingWith(str, suff));
  }
}
 
// This code is contributed by rutvik


Javascript




// Javascript ptogram for the above approach
 
// Function declared to
// return the count of words
// in the given sentence that
// end with the given suffix
function endingWith(str, suff) {
  // Variable to store count
  let c = 0;
 
  // split function used to extract words
  // from sentence in form of list
  let wrd = str.split(" ");
 
  // using for loop with 'in' to extract
  // elements of list
  for (let i = 0; i < wrd.length; i++) {
    if (wrd[i].endsWith(suff)) {
      c += 1;
    }
  }
 
  // returning the count
  return c;
}
 
// Driver Code
let str = "GeeksForGeeks is a computer science portal for geeks";
let suff = "ks";
 
// printing the final code
console.log(endingWith(str, suff));
 
 
// This code is contributed by codebraxnzt


Output: 

2

 

RELATED ARTICLES

Most Popular

Dominic
32269 POSTS0 COMMENTS
Milvus
81 POSTS0 COMMENTS
Nango Kala
6636 POSTS0 COMMENTS
Nicole Veronica
11802 POSTS0 COMMENTS
Nokonwaba Nkukhwana
11865 POSTS0 COMMENTS
Shaida Kate Naidoo
6752 POSTS0 COMMENTS
Ted Musemwa
7026 POSTS0 COMMENTS
Thapelo Manthata
6703 POSTS0 COMMENTS
Umr Jansen
6721 POSTS0 COMMENTS