Find words which are greater than given length k
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)
Please Login to comment...