Skip to content
Related Articles
Open in App
Not now

Related Articles

Find words which are greater than given length k

Improve Article
Save Article
Like Article
  • Difficulty Level : Easy
  • Last Updated : 27 Mar, 2023
Improve Article
Save Article
Like Article

A string is given, and you have to find all the words (substrings separated by a space) which are greater than the given length k.

Examples:

Input : str = "hello geeks for geeks 
          is computer science portal" 
        k = 4
Output : hello geeks geeks computer 
         science portal
Explanation : The output is list of all 
words that are of length more than k.
Input : str = "string is fun in python"
        k = 3
Output : string python 

The idea is to first split the given string around space. Then traverse through all words. For every word, check

C++




// C++ program to find all string
// which are greater than given length k
 
#include <bits/stdc++.h>
using namespace std;
 
// function find string greater than
// length k
void string_k(string s, int k)
{
    // create an empty string
    string w = "";
    // iterate the loop till every space
    for (int i = 0; i < s.size(); i++) {
        if (s[i] != ' ')
 
            // append this sub string in
            // string w
            w = w + s[i];
        else {
 
            // if length of current sub
            // string w is greater than
            // k then print
            if (w.size() > k)
                cout << w << " ";
            w = "";
        }
    }
}
 
// Driver code
int main()
{
    string s = "geek for geeks";
    int k = 3;
    s = s + " ";
    string_k(s, k);
    return 0;
}
 
// This code is contributed by
// Manish Shaw (manishshaw1)


C#




// C# program to find all string
// which are greater than given length k
 
using System;
 
class GFG {
 
    // function find string greater than
    // length k
    static void string_k(string s, int k)
    {
        // create the empty string
        string w = "";
 
        // iterate the loop till every space
        for (int i = 0; i < s.Length; i++) {
            if (s[i] != ' ')
 
                // append this sub string in
                // string w
                w = w + s[i];
            else {
 
                // if length of current sub
                // string w is greater than
                // k then print
                if (w.Length > k)
                    Console.Write(w + " ");
                w = "";
            }
        }
    }
 
    // Driver code
    static void Main()
    {
        string s = "geek for geeks";
        int k = 3;
        s = s + " ";
        string_k(s, k);
    }
}
 
// This code is contributed by
// Manish Shaw (manishshaw1)


Java




// Java program to find all string
// which are greater than given length k
 
import java.io.*;
import java.util.*;
 
public class GFG {
 
    // function find string greater than
    // length k
    static void string_k(String s, int k)
    {
        // create the empty string
        String w = "";
 
        // iterate the loop till every space
        for (int i = 0; i < s.length(); i++) {
            if (s.charAt(i) != ' ')
 
                // append this sub string in
                // string w
                w = w + s.charAt(i);
            else {
 
                // if length of current sub
                // string w is greater than
                // k then print
                if (w.length() > k)
                    System.out.print(w + " ");
                w = "";
            }
        }
    }
 
    // Driver code
    public static void main(String args[])
    {
        String s = "geek for geeks";
        int k = 3;
        s = s + " ";
        string_k(s, k);
    }
}
 
// This code is contributed by
// Manish Shaw (manishshaw1)


Python




# Python program to find all string
# which are greater than given length k
 
# function find string greater than length k
 
 
def string_k(k, str):
 
    # create the empty string
    string = []
 
    # split the string where space is comes
    text = str.split(" ")
 
    # iterate the loop till every substring
    for x in text:
 
        # if length of current sub string
        # is greater than k then
        if len(x) > k:
 
            # append this sub string in
            # string list
            string.append(x)
 
     # return string list
    return string
 
 
# Driver Program
k = 3
str = "geek for geeks"
print(string_k(k, str))


PHP




<?php
// PHP program to find all $
// which are greater than given length k
 
// function find string greater than
// length k
function string_k($s, $k)
{
     
    // create the empty string
    $w = "";
     
    // iterate the loop till every space
    for($i = 0; $i < strlen($s); $i++)
    {
        if($s[$i] != ' ')
         
            // append this sub $in $w
            $w = $w.$s[$i];
        else {
             
            // if length of current sub
            // $w is greater than
            // k then print
            if(strlen($w) > $k)
                echo ($w." ");
            $w = "";
        }
    }
}
 
// Driver code
$s = "geek for geeks";
$k = 3;
$s = $s . " ";
string_k($s, $k);
 
// This code is contributed by
// Manish Shaw (manishshaw1)
?>


Javascript




<script>
// javascript program to find all string
// which are greater than given length k
 
    // function find string greater than
    // length k
    function string_k( s , k) {
        // create the empty string
        var w = "";
 
        // iterate the loop till every space
        for (i = 0; i < s.length; i++) {
            if (s.charAt(i) != ' ')
 
                // append this sub string in
                // string w
                w = w + s.charAt(i);
            else {
 
                // if length of current sub
                // string w is greater than
                // k then print
                if (w.length > k)
                    document.write(w + " ");
                w = "";
            }
        }
    }
 
    // Driver code
     
        var s = "geek for geeks";
        var k = 3;
        s = s + " ";
        string_k(s, k);
 
// This code is contributed by todaysgaurav
</script>


Output

geek geeks 

Time Complexity: O(n), where n is the length of the given string.
Auxiliary Space: O(n)

Method: Using list comprehension

C++




#include <iostream>
#include <sstream>
#include <string>
#include <vector>
 
using namespace std;
 
int main()
{
    string sentence = "hello geeks for geeks is computer "
                      "science portal";
    int length = 4;
    vector<string> words;
    stringstream ss(sentence);
    string word;
 
    while (ss >> word) {
        if (word.length() > length) {
            words.push_back(word);
        }
    }
 
    for (const auto& w : words) {
        cout << w << " ";
    }
 
    cout << endl;
 
    return 0;
}


C#




using System;
using System.Linq;
 
class Program
{
    static void Main(string[] args)
    {
        string sentence = "hello geeks for geeks is computer science portal";
        int length = 4;
        var words = sentence.Split(' ').Where(word => word.Length > length).ToArray();
 
        Console.WriteLine("[" + string.Join(", ", words.Select(w => "'" + w + "'")) + "]");
    }
}


Java




import java.util.Arrays;
 
public class Main {
    public static void main(String[] args)
    {
        String sentence
            = "hello geeks for geeks is computer science portal";
        int length = 4;
        String[] words
            = Arrays.stream(sentence.split(" "))
                  .filter(word -> word.length() > length)
                  .toArray(String[] ::new);
 
        System.out.println(Arrays.toString(words));
    }
}


Python3




sentence = "hello geeks for geeks is computer science portal"
length = 4
print([word for word in sentence.split() if len(word) > length])


Javascript




let sentence = "hello geeks for geeks is computer science portal";
let length = 4;
let words = sentence.split(" ").filter(word => word.length > length);
console.log(words);
 
// This code is contributed by codebraxnzt


Output

['hello', 'geeks', 'geeks', 'computer', 'science', 'portal']

Time Complexity: O(n), where n is the length of the given string.
Auxiliary Space: O(n)

Method: Using lambda function 

Python3




n="hello geeks for geeks is computer science portal"; l=4
s=n.split(" ")
l=list(filter(lambda x: (len(x)>l),s))
print(l)


Output

['hello', 'geeks', 'geeks', 'computer', 'science', 'portal']

Time Complexity: O(n), where n is the length of the given string.
Auxiliary Space: O(n)

Method: Using the enumerate function 

Python3




sentence = "hello geeks for geeks is computer science portal"
length = 4
s = sentence.split()
print([a for i, a in enumerate(s) if len(a) > length])


Output

['hello', 'geeks', 'geeks', 'computer', 'science', 'portal']

Time Complexity: O(n), where n is the length of the given string.
Auxiliary Space: O(n)


My Personal Notes arrow_drop_up
Like Article
Save Article
Related Articles

Start Your Coding Journey Now!