Question: SubStringGenerator CODE: import java.util.ArrayList; /** * This class generates substrings of a string. */ public class SubstringGenerator { public static ArrayList getSubstrings(String word) { //this

 SubStringGenerator CODE: import java.util.ArrayList; /** * This class generates substrings of

SubStringGenerator CODE:

import java.util.ArrayList; /** * This class generates substrings of a string. */ public class SubstringGenerator { public static ArrayList getSubstrings(String word) { //this is the value you will return ArrayList result = new ArrayList(); //come up with a base case first // Below here is the recursive case // Form a simpler word by removing the first character // Generate all substrings of the simpler word // This is where you will make a recursive call // You can store the result from this temporary call in // your results ArrayList // Add all strings that start with word.charAt(0) // You will need a loop here // Return all substrings return result; } }

---------------------------------------------------------------------------------------------------------------------------------------

SubstringTester CODE:

import java.util.ArrayList; public class SubstringTester { public static void main(String[] args) { ArrayList substrings = SubstringGenerator.getSubstrings("ab"); System.out.println("Substrings of \"ab\""); System.out.print("Actual: "); for (String s : substrings) { System.out.print("'" + s + "' "); } System.out.println(); System.out.println("Expected: '' 'b' 'a' 'ab'"); System.out.println(); substrings = SubstringGenerator.getSubstrings("abc"); System.out.println("Substrings of \"abc\""); System.out.print("Actual: "); for (String s : substrings) { System.out.print("'" + s + "' "); } System.out.println(); System.out.println("Expected: '' 'c' 'b' 'bc' 'a' 'ab' 'abc'"); System.out.println(); substrings = SubstringGenerator.getSubstrings("rum"); System.out.println("Substrings of \"rum\""); System.out.print("Actual: "); for (String s : substrings) { System.out.print("'" + s + "' "); } System.out.println(); System.out.println("Expected: '' 'm' 'u' 'um' 'r' 'ru' 'rum'"); System.out.println(); System.out.println("Substrings of \"abc123\""); substrings = SubstringGenerator.getSubstrings("abc123"); System.out.print("Actual: "); for (String s : substrings) { System.out.print("'" + s + "' "); } System.out.println(); System.out.println("Expected: '' '3' '2' '23' '1' '12' '123' 'c' 'c1' 'c12' 'c123' 'b' 'bc' 'bc1' 'bc12' 'bc123' 'a' 'ab' 'abc' 'abc1' 'abc12' 'abc123'"); } }

Tasks: Follow the directions below to complete your lab assignment For today's lab we will be completing Exercise E13.12 from the book. Starter code is included on Google Drive - SubstringTester.java and SubstringGenerator.java. E13.12 - Implement a SubstringGenerator (class) that generates all substrings of a string recursively. For example, the substrings of the string "rum" are the seven strings Mrum", ru um Hint: First enumerate all substrings that start with the first character. There are n of them if the string has length n. Then enumerate the substrings of the string that you obtain by removing the first character. Here is what your output should look like after your project is completed. (The order of your substrings is not important, if vour generator produces all substrings correctly) Substrings of "ab" Actual:'' 'b'"aab' Expected:'''b''a "ab' Substrings of abc Actual''c''b 'b'aab abc' Expected: c''b''bc' 'a'ab'abc Substrings of "abc123" Actual:''3' 2 23' 1''12''123c'c1 C12 C123' 'b' 'bc' 'bc1' 'bc12' 'bc123' ''abab'abc1' 'abc12' "abc123' Expected:3' 2 23' 1'12123'c1c12' "c123' 'b' "bc' 'bc1' 'bc12' 'bc123 "a'ab'abc''abc1' 'abc12' 'abc123' Once your project is done, take a screen-shot or capture the text of your output and submit this along with vour project IMPORTANT!! Follow the name conventions shown in the lab documentation. For this lab vou will simply need to complete the recursive getSubstrings method provided in the starter code

Step by Step Solution

There are 3 Steps involved in it

1 Expert Approved Answer
Step: 1 Unlock blur-text-image
Question Has Been Solved by an Expert!

Get step-by-step solutions from verified subject matter experts

Step: 2 Unlock
Step: 3 Unlock

Students Have Also Explored These Related Databases Questions!