How To Count Publish Of Words Inwards String - Coffee Coding Exercise

String is really pop amidst Interviewer, together with y'all are boundary to run into around questions on whatever programming interview, Java Interviews are no exception. Questions based from Java fundamentals similar why String is Immutable inward Java to questions based on coding skills e.g. opposite String using recursion inward Java, String has e'er troubled candidates. In this article, nosotros volition run into a similar questions, how to count position out of words inward Java String. Before jumping to solution, only read below to brand certain what a give-and-take agency here. It's sequence of 1 or to a greater extent than non-space characters. We volition run into 2 examples to discovery position out of words inward Java String, starting fourth dimension 1 is based upon pure logic, where it goes through all characters from String together with thence count each word. Second is to a greater extent than interesting than starting fourth dimension one, hither nosotros cause got used regular facial expression to discovery all words. We separate String yesteryear white space, passing \\s+ means greedy search i.e. it includes 1 or to a greater extent than white spaces.  BTW, this is 1 of the query I forgot to percentage when I wrote virtually Top xx String coding questions, volition include it on that listing for sure.


Problem :

 String is really pop amidst Interviewer How to Count Number of Words inward String - Java Coding ExerciseWrite a utilisation inward Java which cause got a String declaration together with returns position out of words inward it. Influenza A virus subtype H5N1 give-and-take is a sequence of 1 or to a greater extent than non-space grapheme i.e. whatever grapheme other than '' (empty String). This should hold upwards your method signature :


public int wordCount(String word);

This method should furnish 5 if passed "Java is best programming language" together with furnish 3 if passed "Java is great". Similarly a telephone band to wordCount("    ") should furnish 0.

Solution :

In gild to implement this method nosotros demand to assume that 2 words are separated yesteryear space. We too demand to ignore leading, trailing together with multiple spaces betwixt words. One way to solve this occupation is  to separate String yesteryear infinite together with thence count position out of parts. We volition run into 2 solution of this problem, hither is the starting fourth dimension 1 .


How discovery position out of words String - 2 Examples

In this sample program, nosotros cause got 2 methods, starting fourth dimension nosotros volition count position out of words without using regular expression, together with minute volition produce the same but using regex.

/**  * Java Program to count position out of words inward String  *  * @author  Javin  */ public class WordCounterProblem{         /*     * This method furnish give-and-take count without using regular facial expression     */     public int wordcount(String word) {         if (word == null || word.isEmpty()) {             return 0;         }         int count = 0;         char ch[] = new char[word.length()];         for (int i = 0; i < word.length(); i++) {             ch[i] = word.charAt(i);             if (((i > 0) && (ch[i] != ' ') && (ch[i - 1] == ' ')) || ((ch[0] != ' ') && (i == 0))) {                 count++;             }         }         return count;     }      /*     * Counting position out of words using regular expression.     */     public int countWord(String word) {         if (word == null) {             return 0;         }         String input = word.trim();         int count = input.isEmpty() ? 0 : input.split("\\s+").length;         return count;     }  }

Junit Test Case

Whenever y'all are asked to write code on Interview, brand certain y'all write around unit of measurement bear witness equally well. Some fourth dimension Interviewer volition inquire y'all explicitly, but many times they only desire to run into whether candidate follows evolution exercise similar unit of measurement testing together with code review. For this problem, I cause got wrote 5 test, though inward 1 method for the sake of brevity. First is a normal infinite separated word, minute is empty String, tertiary is String amongst only infinite together with 4th is give-and-take separated amongst multiple white space. You tin farther add together unit of measurement bear witness for cypher String, String without white space, String amongst leading together with trailing white space. I function out that to you.


import static org.junit.Assert.*; import org.junit.Test;  public class WordCounterTest {      @Test     public void wordCount() {         Testing test = new Testing();         assertEquals(3, test.wordcount("JUnit is Best")); // string amongst iii words         assertEquals(0, test.wordcount(""));  // empty string         assertEquals(0, test.wordcount("   "));  // no words, only spaces         assertEquals(3, test.wordcount("String   is   Immutable")); // words amongst multiple infinite inward between         assertEquals(2, test.wordcount("See y'all     ")); // words amongst trailing space         assertEquals(2, test.wordcount("  Good Morning")); // words amongst leading space         assertEquals(0, test.wordcount(null)); // cypher check     }      @Test     public void countWord() {         Testing test = new Testing();         assertEquals(3, test.countWord("JUnit is Best"));         assertEquals(0, test.countWord(""));         assertEquals(0, test.countWord("   "));         assertEquals(3, test.countWord("String   is   Immutable"));         assertEquals(2, test.countWord("See y'all     "));         assertEquals(2, test.countWord("  Good Morning"));         assertEquals(0, test.countWord(null));     }  }

That's all virtually how to discovery position out of words inward a Java String. We cause got seen 2 examples to produce that. It's pretty slowly using split() method of String class, which too accepts regular expression. By using regex \\s+ nosotros tin separate String into words. As I said, don't forget to write unit of measurement bear witness on interviews, Interviewer e'er await y'all to write production lineament code together with unit of measurement testing is constituent of that.

Further Reading
Algorithms together with Data Structures - Part 1 together with 2
Java Fundamentals, Part 1 together with 2
Cracking the Coding Interview - 189 Questions together with Solutions

If y'all similar this coding occupation together with hungry for to a greater extent than coding questions from Interviews, cheque out these amazing collection :
  • 30 Programming questions from Job Interviews (list)
  • 15 Data Structure together with Algorithm Questions for Programmers (list)
  • Write a Program to solve Producer Consumer Problem inward Java. (Solution)
  • How to opposite String inward Java without using API methods? (Solution)
  • Write a Program to cheque if a position out is binary inward Java? (Solution)
  • How to discovery starting fourth dimension non repeated characters from String inward Java? (Solution)
  • How to withdraw duplicates from array without using Collection API? (Solution)
  • Write a Program to Check if a position out is Power of Two or not? (Answer)
  • How to Swap Two Numbers without using Temp Variable inward Java? (Solution)
  • How to cheque if LinkedList contains loop inward Java? (Solution)
  • How to discovery pump chemical gene of LinkedList inward 1 pass? (Solution)
  • How to discovery prime number factors of a position out inward Java? (Solution)
  • Write a Program to forestall Deadlock inward Java? (Solution)
  • How to cheque if a position out is Palindrome or not? (Solution)
  • How to withdraw duplicates from ArrayList inward Java? (Solution)
  • Write a Java Program to See if 2 String are Anagram of each other? (Solution)
  • How to count occurrences of  a grapheme inward String? (Solution)
  • Write a Program to calculate Sum of Digits of a position out inward Java? (Solution)
  • How to cheque if a position out is Prime or not? (Solution)
  • Write a Program to discovery Fibonacci Series of a Given Number? (Solution)
  • How to cheque if a position out is Armstrong position out or not? (Solution)
  • Write a Program to calculate factorial using recursion inward Java? (Solution)
  • How to cheque if Array contains duplicate position out or not? (Solution)

Further Learning
The Coding Interview Bootcamp: Algorithms + Data Structures
Data Structures together with Algorithms: Deep Dive Using Java
Algorithms together with Data Structures - Part 1 together with 2

0 Response to "How To Count Publish Of Words Inwards String - Coffee Coding Exercise"

Post a Comment

Iklan Atas Artikel

Iklan Tengah Artikel 1

Iklan Tengah Artikel 2

Iklan Bawah Artikel