
Big Java Late Objects
2nd Edition
ISBN: 9781119330455
Author: Horstmann
Publisher: WILEY
expand_more
expand_more
format_list_bulleted
Question
Chapter 16, Problem 16PP
Program Plan Intro
To implement a hash table with double hashing
Program plan:
- In a file “HashSet.java”, import necessary package, and create a class “HashSet”,
- Declare the array of “Object” type.
- Declare the necessary variable.
- Define the constructor to create a hash table.
- Create an array and set the current size to “0”.
- Define the method “toString()” that returns the string representation of array.
- Define the method “hash2()” that returns the hard-coded queue for the problem.
- Define the method “contains()”,
- Assign the hash code.
- Check the condition,
- If it is true, returns true.
- Create a loop,
-
- Compute the probe.
- Check the condition,
- If it is true, returns true.
- Check whether the bucket value contains null,
- If it is true, returns false.
- Returns false.
- If it is true, returns true.
- Define the method “getHashCode()”,
- Assign the hash code.
- Check whether the value is less than “0”,
- If it is true, assign the negative value.
- Update the hash value.
- Return the hash code.
- If it is true, assign the negative value.
- Define the method “add()”
- Check whether there is a room before probing,
- If it is true, call the method “resizeTable()()”.
- Assign the hash code returned from the method “getHashCode()”.
- Check whether the has value is a null,
-
- If it is true, assign the object properties.
- Otherwise, execute a loop,
-
- Compute the quadratic probe.
- Check whether the bucket contains null value,
- If it is true, assign the object properties.
- Use break statement.
- Otherwise, Check the condition,
- Returns false.
- Increment the current size.
- Returns true.
- If it is true, call the method “resizeTable()()”.
- Check whether there is a room before probing,
- Define the method “remove()” to remove the object from the set,
- Get the hash code.
- Set the position to “-1”.
- Check the condition,
- If it is true, assign the hash code to position.
- Create a loop,
-
- Compute the probe.
- Check the condition, set the new position.
- Check whether the position value is “-1”,
-
- If it is true, returns false.
- If the item found, find the last item in the rest of the probing sequence.
- Create a loop,
-
- Compute the probe.
- Check whether the current bucket value contains null,
- If it is true, use break.
- Otherwise, check the condition,
- If it is true, assign the current value to as last index.
- Check whether the last index is “-1”,
-
- If it is true, assign the null value and decrement the size.
- Otherwise, assign the last index value to the current position.
- Assign null value to last index.
- Create a loop to rehash the table,
-
- Compute the probe.
- Check the condition,
- If it is true, break the loop.
- Assign the current bucket value to object.
- Assign null value to bucket.
- Decrement current size.
- Call the method “add()”.
- Returns true.
- If it is true, assign the hash code to position.
- Define the method “iterator()” that returns an iterator that traverses the elements of the set.
- Define the method “size()” to return the size.
- Define the method “resizeTable()”,
- Create an object.
- Copy the bucket to the object array.
- Assign the value to the bucket.
- Set the current size to “0”.
- Create a loop,
- Check the condition,
- If it is true, call the method “add()”.
- Check the condition,
- Create a class “HashSetIterator”,
- Declare the variable to denote bucket index.
- Define the constructor that creates a hash set iterator that points to the first element of the hash set.
- Define the method “hasNext ()”,
- Create a loop,
- Check the condition,
-
- Returns true.
- Returns false.
- Create a loop,
- Define the method “next ()”,
- Execute the statement without checking the condition,
- Increment the index.
- Check the condition,
-
- If it is true, create an object for “NoSuchElementException”.
- Check whether the current bucket value contains null,
- Return the value.
- Execute the statement without checking the condition,
- Define the method “remove()”,
- Throw an exception “UnsupportedOperationException”.
- In a file “HashSetTest.java”, create a class “HashSetTest”,
- Define the method “main()”,
- Create an object for “HashSet”.
- Add the name “Harry” into the set.
- Add the name “Romeo” into the set.
- Add the name “Susannah” into the set.
- Add the name “Sarah” into the set.
- Add the name “Adam” into the set.
- Add the name “Larry” into the set.
- Print the set.
- Print the expected output.
- Remove “Susannah” from the set.
- Print the set and expected result.
- Check whether “Adam” is in the set and print the result.
- Print the expected result.
- Define the method “main()”,
Expert Solution & Answer

Want to see the full answer?
Check out a sample textbook solution
Students have asked these similar questions
Ideal MOSFET Current–Voltage
Characteristics—NMOS Device and draw the circuit
1. Create a Person.java file. Implement the public Person and Student classes in Person.java, including all the variables and methods in
the UMLS.
Person
-name: String
-street: String
-city: String
+Person(String name, String, street, String, city)
+getName(): String
+setName(String name): void
+getStreet(): String
+setStreet(String street): void
+getCity(): String
+setCity(String City): void
+toString(): String
Student
-Id: int
+Person(String name, String, street, String, city, int Id)
+getId(): int
+setId(int Id): void
+toString(): String
2. Create a StudentTest.java file. Implement a public StudentTest class with a main method. In the main method, create one student
object and print the object using System.out.println().
Your printing result must follow the example output:
name: Mike, street: Morris Ave, city: Union, Id: 1000
Hint: You need to modify the toString methods in the Student class and Person class!
1) Apply the Paint Blue algorithm discussed in class to the following Finite Automata.
a
a
a
b
b
a
COIS-3050H-R-W01-2025WI-COMB Formal
Languages & Automata
a
b
Show the status of the Finite Automata at the conclusion of the Paint Blue Algorithm (mark the
visited states with an X and only include edges that have not been followed).
2) Use the pumping lemma to prove the following language is nonregular:
L= {ab} = {abbb, aabbbbbb, aaabbbbbbbbb, ...}
Chapter 16 Solutions
Big Java Late Objects
Ch. 16.1 - Prob. 1SCCh. 16.1 - Prob. 2SCCh. 16.1 - Prob. 3SCCh. 16.1 - Prob. 4SCCh. 16.1 - Prob. 5SCCh. 16.1 - Prob. 6SCCh. 16.1 - Prob. 7SCCh. 16.2 - Prob. 8SCCh. 16.2 - Prob. 9SCCh. 16.2 - Prob. 10SC
Ch. 16.2 - Prob. 11SCCh. 16.2 - Prob. 12SCCh. 16.3 - Prob. 13SCCh. 16.3 - Prob. 14SCCh. 16.3 - Prob. 15SCCh. 16.3 - Prob. 16SCCh. 16.3 - Prob. 17SCCh. 16.3 - Prob. 18SCCh. 16.4 - Prob. 19SCCh. 16.4 - Prob. 20SCCh. 16.4 - Prob. 21SCCh. 16.4 - Prob. 22SCCh. 16.4 - Prob. 23SCCh. 16.4 - Prob. 24SCCh. 16 - Prob. 1RECh. 16 - Prob. 2RECh. 16 - Prob. 3RECh. 16 - Prob. 4RECh. 16 - Prob. 5RECh. 16 - Prob. 6RECh. 16 - Prob. 7RECh. 16 - Prob. 8RECh. 16 - Prob. 9RECh. 16 - Prob. 10RECh. 16 - Prob. 11RECh. 16 - Prob. 12RECh. 16 - Prob. 13RECh. 16 - Prob. 14RECh. 16 - Prob. 15RECh. 16 - Prob. 16RECh. 16 - Prob. 17RECh. 16 - Prob. 18RECh. 16 - Prob. 19RECh. 16 - Prob. 20RECh. 16 - Prob. 21RECh. 16 - Prob. 22RECh. 16 - Prob. 23RECh. 16 - Prob. 24RECh. 16 - Prob. 25RECh. 16 - Prob. 26RECh. 16 - Prob. 1PECh. 16 - Prob. 2PECh. 16 - Prob. 3PECh. 16 - Prob. 4PECh. 16 - Prob. 5PECh. 16 - Prob. 6PECh. 16 - Prob. 7PECh. 16 - Prob. 8PECh. 16 - Prob. 9PECh. 16 - Prob. 10PECh. 16 - Prob. 11PECh. 16 - Prob. 12PECh. 16 - Prob. 13PECh. 16 - Prob. 14PECh. 16 - Prob. 15PECh. 16 - Prob. 16PECh. 16 - Prob. 17PECh. 16 - Prob. 18PECh. 16 - Prob. 19PECh. 16 - Prob. 20PECh. 16 - Prob. 21PECh. 16 - Prob. 1PPCh. 16 - Prob. 2PPCh. 16 - Prob. 3PPCh. 16 - Prob. 4PPCh. 16 - Prob. 5PPCh. 16 - Prob. 6PPCh. 16 - Prob. 7PPCh. 16 - Prob. 8PPCh. 16 - Prob. 9PPCh. 16 - Prob. 10PPCh. 16 - Prob. 11PPCh. 16 - Prob. 12PPCh. 16 - Prob. 13PPCh. 16 - Prob. 14PPCh. 16 - Prob. 15PPCh. 16 - Prob. 16PPCh. 16 - Prob. 17PP
Knowledge Booster
Similar questions
- 3) Find CFGs that for these regular languages over the alphabet Σ= {a, b}. Draw a Finite Automata e CFG. 1 COIS-3050H-R-W01-2025WI-COMB Formal anguages & Automata Is that contain the substring aba. (b) The language of all words that have an odd number letters and contains the string bb. (c) The language of all words that begin with the substring ba and contains an odd number of letters. 4) Convert the following FA into a PDA. a a S± b a a Ν Ꮓarrow_forwardCOIS-3050H-R-W01-2025WI-COMB Formal ministic PDA. Are the following words accepted by this Languages & Automata UI MIUSɩ that aTU I ed, indicate which state the PDA is in when the crash occurs. (a) aabbaa (b) aaabab (c) bababa Start (d) aaaabb A Accept Read₁ Push a (e) aaaaaa a b Read, Popi a a,b A Read₂ Accept A Pop₂arrow_forward5) Eliminate the A-productions from the following CFG: Abc COIS-3050H-R-W01-2025WI-COMB Formal Languages & Automata BAabC C CaA | Bc | A 6) Convert the following CFG into CNF. S→ XYZ XaXbS | a |A YSbS | X | bb Z→ barrow_forward
- Need help answering these questions!1. Design a While loop that lets the user enter a number. The number should be multiplied by 10, and the result stored in a variable named product. The loop should iterate as long as the product contains a value less than 100. 2. Design a For loop that displays the following set of numbers: 0, 10, 20, 30, 40, 50 . . . 1000 3. Convert the While loop in the following code to a Do-While loop: Declare Integer x = 1 While x > 0 Display "Enter a number." Input x End Whilearrow_forwardNeed help with these:Design a While loop that lets the user enter a number. The number should be multiplied by 10, and the result stored in a variable named product. The loop should iterate as long as the product contains a value less than 100. 2. Design a For loop that displays the following set of numbers: 0, 10, 20, 30, 40, 50 . . . 1000 3. Convert the While loop in the following code to a Do-While loop: Declare Integer x = 1 While x > 0 Display "Enter a number." Input x End Whilearrow_forwardConvert the While loop in the following code to a Do-While loop: Declare Integer x = 1 While x > 0 Display "Enter a number." Input x End Whilearrow_forward
- Python - need help creating a python program that will sum the digits of a number entered by the user. For example if the user inputs the value 243 the program will output 9 because 2 + 4 + 3 = 9. The program should ask for a single integer from the user, it should then calculate the sum of all the digits of that number and output the result.arrow_forwardI need help with this in Python (with flowchart): Im creating a reverse guessing game. Then to choose a random number from 1 to 100 and the computer program will attempt to guess it, displaying the directions calculated or not. The guess will be displayed and the user will answer if it was correct or not. If correct, the game ends, if not then the computer asks if the guess was too high or too low. Finally inputting an answer and the computer generates a new guess within the proper range. Oh and to make sure the program doesnt guess outside of the ranges produced by the inputs of “too high” and “too low”. The program ending when the user guesses correctly or after the program takes 6 guesses. HELP ASAP!arrow_forwardI need help with this in Python (with flowchart): Im creating a reverse guessing game. Then to choose a random number from 1 to 100 and the computer program will attempt to guess it, displaying the directions calculated or not. The guess will be displayed and the user will answer if it was correct or not. If correct, the game ends, if not then the computer asks if the guess was too high or too low. Finally inputting an answer and the computer generates a new guess within the proper range. Oh and to make sure the program doesnt guess outside of the ranges produced by the inputs of “too high” and “too low”. The program ending when the user guesses correctly or after the program takes 6 guesses. HELP ASAP!arrow_forward
- Need help finding errors in my pseudocode (Two)! Declare Boolean finished = False Declare Integer value, cube While NOT finished Display "Enter a value to be cubed." Input value; Set cube = value^3 Display value, " cubed is ", cube End While Next, I intended the following pseudocode to display the numbers 1 through 60, and then display the message "Time’s up!". Doesnt work and has error. Declare Integer counter = 1 Const Integer TIME_LIMIT = 60 While counter < TIME_LIMIT Display counter Set counter = counter + 1 End While Display "Time's up!"arrow_forwardHaving error in pseudcode; wanting to get five sets of two numbers each, calculate the sum of each set, and calculate the sum of all the numbers entered. Not functioning as intended and can't find the error.Code: // This program calculates the sum of five sets of two numbers. Declare Integer number, sum, total Declare Integer sets, numbers Constant Integer MAX_SETS = 5 Constant Integer MAX_NUMBERS = 2 Set sum = 0; Set total = 0; For sets = 1 To MAX_NUMBERS For numbers = 1 To MAX_SETS Display "Enter number ", numbers, " of set ", sets, "." Input number; Set sum = sum + number End For Display "The sum of set ", sets, " is ", sum "." Set total = total + sum Set sum = 0 End For Display "The total of all the sets is ", total, "."arrow_forwardNeed help converting loops!1. Convert the following While loop to a For loop: Declare Integer count = 0 While count < 50 Display "The count is ", count Set count = count + 1 End While _________________________________________________ 2. Convert the following For loop to a While loop: Declare Integer count For count = 1 To 50 Display count End Forarrow_forward
arrow_back_ios
SEE MORE QUESTIONS
arrow_forward_ios
Recommended textbooks for you
- Database System ConceptsComputer ScienceISBN:9780078022159Author:Abraham Silberschatz Professor, Henry F. Korth, S. SudarshanPublisher:McGraw-Hill EducationStarting Out with Python (4th Edition)Computer ScienceISBN:9780134444321Author:Tony GaddisPublisher:PEARSONDigital Fundamentals (11th Edition)Computer ScienceISBN:9780132737968Author:Thomas L. FloydPublisher:PEARSON
- C How to Program (8th Edition)Computer ScienceISBN:9780133976892Author:Paul J. Deitel, Harvey DeitelPublisher:PEARSONDatabase Systems: Design, Implementation, & Manag...Computer ScienceISBN:9781337627900Author:Carlos Coronel, Steven MorrisPublisher:Cengage LearningProgrammable Logic ControllersComputer ScienceISBN:9780073373843Author:Frank D. PetruzellaPublisher:McGraw-Hill Education

Database System Concepts
Computer Science
ISBN:9780078022159
Author:Abraham Silberschatz Professor, Henry F. Korth, S. Sudarshan
Publisher:McGraw-Hill Education

Starting Out with Python (4th Edition)
Computer Science
ISBN:9780134444321
Author:Tony Gaddis
Publisher:PEARSON

Digital Fundamentals (11th Edition)
Computer Science
ISBN:9780132737968
Author:Thomas L. Floyd
Publisher:PEARSON

C How to Program (8th Edition)
Computer Science
ISBN:9780133976892
Author:Paul J. Deitel, Harvey Deitel
Publisher:PEARSON

Database Systems: Design, Implementation, & Manag...
Computer Science
ISBN:9781337627900
Author:Carlos Coronel, Steven Morris
Publisher:Cengage Learning

Programmable Logic Controllers
Computer Science
ISBN:9780073373843
Author:Frank D. Petruzella
Publisher:McGraw-Hill Education