Answered step by step
Verified Expert Solution
Link Copied!

Question

1 Approved Answer

The goal of this assignment is to practice string processing functions, and design a solution which distributes the functionalities among appropriate classes. Problem: When you

The goal of this assignment is to practice string processing functions, and design a solution which distributes the functionalities among appropriate classes.

Problem:

When you are given a text file, parse, tokenize, and further split the tokens into specified sized letter groups.

Example:

Input: Second Programming Assignment

Tokens: second programming assignment

Letter Groups (2) : "se" "ec" "co" "on" "nd" "pr" "ro" "og" "gr" "ra" "am" "mm" "mi" "in" "ng" "as" "ss" "si" "ig" "gn" "nm" "me" "en" "nt"

Letter Groups (3): "sec" "eco" "con" "ond" "pro" "rog" "ogr" "gra" "ram" "amm" "mmi" "min" "ing" "ass" "ssi" "sig" "ign" "gnm" "nme" "men" "ent"

After generating the letter groups, generate the histogram (frequency of occurrence) of the letter groups.

The name of the text file will be the first argument of your main function and letterGroupLen will be the second argument of your main function.

Parse the input text file

You will have 2 classes in your design. SentenceUtils and Histogram.

SentenceUtils class will tokenize and partition the tokens into letter groups

Histogram class using a HashMap data structure will count the number of occurrence of each letter group, and print the results when requested.

The solution is composed of 2 classes: a SentenceUtils Class to convert a string into letterGroups and also an Histogram class to do histogram processing. These 2 functionalities are independent of each other.

You need to implement body of the following 4 functions and also the main function:

private String[] getTokens(String line)

private void splitTokenstoLetterGroups(String[] tokens)

public void generateHistogram(ArrayList letterGroups)

public void printHistogram()

Prof wants it in her format like this. Im so lost in this class please help

image text in transcribed

image text in transcribed

public class SentenceUtils f private ArrayList mLetterGroups; private int mLetterGroupLen; public SentenceUtils (int letterGroupLen) this.mLetterGroups = new ArrayList(); this.mLetterGroupLen = let terGroupLen; public void addwords (String line) String[] tokens = this.getTokens (line); this.splitTokenstoLetterGroups (tokens); public ArrayList getLetterGroups) return (this.mLetterGroups); This function splits a string into array of strings separated by space character input: a string output: array of words seperated by space character example: input: "object oriented" output: ["object", "oriented"] private String[ getTokens (String line) You are going to implement body of this function This function splits the tokens into letter groups according to this.mLetterGroupLen input: array of tokens output: letterGroups of size this.mLetterGroupLen appended to this.mLetterGroups example:input "object" "oriented" output: thismLetterGroups (of size 4) = this.mLetterGroups + ["obje","bjec", "ject", "orie", "rien", "ient", "ente", "nted"] private void splitTokenstoLetterGroups (String] tokens) You are going to implement body of this function

Step by Step Solution

There are 3 Steps involved in it

Step: 1

blur-text-image

Get Instant Access to Expert-Tailored Solutions

See step-by-step solutions with expert insights and AI powered tools for academic success

Step: 2

blur-text-image

Step: 3

blur-text-image

Ace Your Homework with AI

Get the answers you need in no time with our AI-driven, step-by-step assistance

Get Started

Recommended Textbook for

Practical Azure SQL Database For Modern Developers Building Applications In The Microsoft Cloud

Authors: Davide Mauri, Silvano Coriani, Anna Hoffma, Sanjay Mishra, Jovan Popovic

1st Edition

1484263693, 978-1484263693

More Books

Students also viewed these Databases questions

Question

1. Which position would you take?

Answered: 1 week ago