Big Java Late Objects
2nd Edition
ISBN: 9781119330455
Author: Horstmann
Publisher: WILEY
expand_more
expand_more
format_list_bulleted
Question
Chapter 16, Problem 17PP
Program Plan Intro
To implement a hash table that marks the removed element with an “inactive” element
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.
- Declare the static 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 “contains()”,
- Assign the hash code.
- Create a loop for probing sequence,
- Check the condition,
- If it is true, returns true.
- Check whether it contains null value,
- If it is true, returns false.
-
- Create a loop for second probing sequence,
- Check the condition,
- If it is true, returns true.
- Check whether it contains null value,
- If it is true, returns false.
- Check the condition,
- Returns false.
- Create a loop for second probing sequence,
- Check the condition,
- 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()”.
- Create a loop to follow probing sequence,
- Check whether the bucket has either null value or INACTIVE element,
- If it is true, assign the object properties.
- Increment the size.
- Returns true.
- Otherwise, check another condition,
- Returns false.
- Check whether the bucket has either null value or INACTIVE element,
- Execute a loop to wrap around to”0” to the value less than the hash code,
- Check whether the bucket contains either null value or INACTIVE element,
- If it is true, assign the object properties.
- Increment the size.
- Otherwise, Check the condition,
- Returns false.
- Check whether the bucket contains either null value or INACTIVE element,
- 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”.
- Create a loop,
- Check the condition,
- If it is true, assign the hash code to position.
-
- Create a loop,
- Check the condition,
- If it is true, set the new position.
- Check the condition,
- Check whether the position value is “-1”,
- If it is true, returns false.
- If the item found, replace it with INACTIVE element.
- Decrement the size.
- Returns true.
- Create a loop,
- Check the condition,
- 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.
- Returns true.
- 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.
- Check whether the current bucket value contains null,
- If it is true, create an object for “NoSuchElementException”.
- 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 solutionStudents have asked these similar questions
What should the next three steps be in my machine based home security system after deployment and after the following current steps:
Enhancing Security & Privacy Measures
User Interface (UI) and Experience (UX) Improvement
Machine Learning Model Refinement & Continuous Improvement
I am creating a machine learning home based security system, have completed initial deployment and in the following phases of the project: Expanding device compatibility and integration, preparing for cloud integration, and implementing system reduncancy and disaster recovery. What should the next three phases be?
Hands-On Assignments Part II
Assignment 1-5: Querying the DoGood Donor Database
Review the DoGood Donor data by writing and running SQL statements to perform the following
tasks:
1. List each donor who has made a pledge and indicated a single lump sum payment. Include
first name, last name, pledge date, and pledge amount.
2. List each donor who has made a pledge and indicated monthly payments over one year.
Include first name, last name, pledge date, and pledge amount. Also, display the monthly
payment amount. (Equal monthly payments are made for all pledges paid in monthly
payments.)
3. Display an unduplicated list of projects (ID and name) that have pledges committed. Don't
display all projects defined; list only those that have pledges assigned.
4. Display the number of pledges made by each donor. Include the donor ID, first name, last
name, and number of pledges.
5. Display all pledges made before March 8, 2012. Include all column data from the
DD PLEDGE table.
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
- Write a FancyCar class to support basic operations such as drive, add gas, honk horn, and start engine. FancyCar.java is provided with method stubs. Follow each step to gradually complete all methods. Note: This program is designed for incremental development. Complete each step and submit for grading before starting the next step. Only a portion of tests pass after each step but confirm progress. The main() method includes basic method calls. Add statements in main() as methods are completed to support development mode testing. Step 0. Declare private fields for miles driven as shown on the odometer (int), gallons of gas in tank (double), miles per gallon or MPG (double), driving capacity (double), and car model (String). Note the provided final variable indicates the gas tank capacity of 14.0 gallons. Step 1 (2 pts). 1) Complete the default constructor by initializing the odometer to five miles, tank is full of gas, miles per gallon is 24.0, and the model is "Old Clunker". 2)…arrow_forwardFind the error: daily_sales = [0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0] days_of_week = ['Sunday', 'Monday', 'Tuesday', 'Wednesday', 'Thursday', 'Friday', 'Saturday'] for i in range(7): daily_sales[i] = float(input('Enter the sales for ' \ + day_of_week[i] + ': ')arrow_forwardFind the error: daily_sales = [0.0, 0,0, 0.0, 0.0, 0.0, 0.0, 0.0] days_of_week = ['Sunday', 'Monday', 'Tuesday', 'Wednesday', 'Thursday', 'Friday', 'Saturday'] for i in range(7): daily_sales[i] = float(input('Enter the sales for ' \ + days_of_week[i] + ': ')arrow_forward
- Find the error: daily_sales = [0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0] days_of_week = ['Sunday', 'Monday', 'Tuesday', 'Wednesday', 'Thursday', 'Friday', 'Saturday'] for i in range(6): daily_sales[i] = float(input('Enter the sales for ' \ + days_of_week[i] + ': '))arrow_forwardWhat are the steps you will follow in order to check the database and fix any problems with it and normalize it? Give two references with your answer.arrow_forwardWhat are the steps you will follow in order to check the database and fix any problems with it? Have in mind that you SHOULD normalize it as well. Consider that the database offline is not allowed since people are connected to it and personal data might be bridged and not secured. Provide three refernces with you answer.arrow_forward
- Should software manufacturers should be tolerant of the practice of software piracy in third-world countries to allow these countries an opportunity to move more quickly into the information age? Why or why not?arrow_forwardI would like to know about the features of Advanced Threat Protection (ATP), AMD-V, and domain name space (DNS).arrow_forwardPlease show the code for the Tikz figurearrow_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