BIG JAVA: LATE OBJECTS
2nd Edition
ISBN: 9781119626220
Author: Horstmann
Publisher: WILEY
expand_more
expand_more
format_list_bulleted
Question
Chapter 16, Problem 21PE
Program Plan Intro
Implementation of hash set
Program plan:
- In a file “HashSet.java”, import necessary packages, and create a class “HashSet”,
- Declare the array of “Node” type.
- Declare the necessary variables.
- Define the constructor to create a hash table.
- Create an array and set the current size to “0”.
- Compute the value for “p”.
- Execute a loop,
- Increment the value of “p”.
- Set the value for “a”, and “b”.
- Define the method “isPrime()” to test whether the value passed is prime or not.,
- Define the method “contains()”,
- Assign the hash code.
- Check whether the value is less than “0”,
- If it is true, compute the absolute value of hash code.
- Update the hash value.
- Assign the bucket value to the current node.
- Execute loop till array becomes null,
- Check the condition,
- Return true.
-
- Assign the current value.
- Check the condition,
- Returns false.
- Define the method “add()” to add the element to the set,
- Get the hash code.
- Check whether the value is less than “0”,
- If it is true, assign the negative value.
- Update the hash code.
- Assign the bucket value at the hash code to the current node.
- Check whether the current node is not null value,
- If it is true, set the collision value to “1”
- Execute a loop,
- Check the condition,
- Returns “0”.
-
- Assign the next value to the current node.
- Check the condition,
- Create a new node.
- Assign the value to new node value.
- Assign the value to the next node.
- Assign the new node value to the bucket.
- Increment the size.
- Return collision value.
- Define the method “remove()” to remove the object from the set,
- Get the hash code.
- Check whether the value is less than “0”,
- If it is true, assign the negative value.
- Update the hash code.
- Assign the hash code value to the current node.
- Set null to the previous node.
- Execute a loop,
- Check the condition,
- Check whether the previous node contains null value,
-
- If it is true, assign the next node value to the bucket.
- Otherwise,
-
- Assign the next of the current node value to the next of the previous node value.
- Decrement the size.
- Return true.
-
-
- Assign the current node value to the previous node value.
- Assign the next of the current node value to the current node.
-
- Check the condition,
- Return false.
- Define the method “iterator ()” to return an iterator that traverse the set elements,
- Return the object of “HashSetIterator”.
- Define the method “size ()” to return the size of the set.
- Create a class “Node”,
- Declare the object for “Object”.
- Declare the object of “Node”.
- Create a class “HashSetIterator” that implements an interface “Iterator”,
- Declare the necessary variables.
- Define the constructor to create a hash set that point to the first element of the hash set.
- Define the method “hasNext()”,
- Check whether the current node and the next of the current node is not null,
- If it is true, returns true.
-
-
- Execute a loop,
- Check whether the bucket contains not null value,
- If it is true, returns true.
- Check whether the bucket contains not null value,
- Returns false.
- Execute a loop,
-
- Check whether the current node and the next of the current node is not null,
- Define the method “next()”,
- Check the condition,
- Assign the next node value to the current node value.
- Otherwise,
- Execute the following statement,
- Increment the index.
- Check the condition,
- Throws an exception “NoSuchElementException”.
- Assign the value.
- Check the condition at the end of the loop.
- Execute the following statement,
- Return the current node value.
- Check the condition,
- Define the method “remove()”,
- Throw an exception “UnsupportedOperationException”.
- In a file “HashSetFromBook.java”, import necessary packages, and create a class “HashSetFromBook”,
- Declare the array of “Node” type.
- Declare the necessary variables.
- Define the constructor to create a hash table.
- Create an array and set the current size to “0”.
- Define the method “isPrime()” to test whether the value passed is prime or not.,
- Define the method “contains()”,
- Assign the hash code.
- Check whether the value is less than “0”,
- If it is true, assign the negative value.
- Update the hash value.
- Assign the bucket value to the current node.
- Execute loop till array becomes null,
- Check the condition,
- Return true.
-
-
- Assign the current value.
-
- Check the condition,
- Returns false.
- Define the method “add()” to add the element to the set,
- Declare and initialize the variable.
- Get the hash code.
- Check whether the value is less than “0”,
- If it is true, compute the absolute value of hash code.
- Update the hash code.
- Assign the bucket value at the hash code to the current node.
- Check whether the current node is not null value,
- If it is true, set the collision value to “1”
- Execute a loop,
- Check the condition whether the element is already in the set,
- Returns “0”.
-
-
- Assign the next value to the current node.
-
- Check the condition whether the element is already in the set,
- Create a new node.
- Assign the value to new node value.
- Assign the value to the next node.
- Assign the new node value to the bucket.
- Increment the size.
- Return collision value.
- Define the method “remove()” to remove the object from the set,
- Get the hash code.
- Check whether the value is less than “0”,
- If it is true, assign the negative value.
- Update the hash code.
- Assign the hash code value to the current node.
- Set null to the previous node.
- Execute a loop,
- Check the condition,
- Check whether the previous node contains null value,
-
- If it is true, assign the next node value to the bucket.
-
- Otherwise,
- Assign the next of the current node value to the next of the previous node value.
- Decrement the size.
- Return true.
- Otherwise,
- Assign the current node value to the previous node value.
- Assign the next of the current node value to the current node.
-
- If it is true, assign the next node value to the bucket.
- Check the condition,
- Return false.
- Define the method “iterator ()” to return an iterator that traverse the set elements,
- Return the object of “HashSetIterator”.
- Define the method “size ()” to return the size of the set.
- Create a class “Node”,
- Declare the object for “Object”.
- Declare the object of “Node”.
- Create a class “HashSetIterator” that implements an interface “Iterator”,
- Declare the necessary variables.
- Define the constructor to create a hash set that point to the first element of the hash set.
- Define the method “hasNext()”,
- Check whether the current node and the next of the current node is not null,
- If it is true, returns true.
-
-
- Execute a loop,
- Check whether the bucket contains not null value,
- If it is true, returns true.
- Check whether the bucket contains not null value,
- Returns false.
- Execute a loop,
-
- Check whether the current node and the next of the current node is not null,
- Define the method “next()”,
- Check the condition,
- Assign the next node value to the current node value.
- Otherwise,
- Execute the following statement,
- Increment the index.
- Check the condition,
- Throws an exception “NoSuchElementException”.
- Assign the value.
- Check the condition at the end of the loop.
- Execute the following statement,
- Return the current node value.
- Check the condition,
- Define the method “remove()”,
- Throw an exception “UnsupportedOperationException”.
- In a file “HashSetTest.java”, import necessary packages, and create a class “HashSetTest”,
- Define the “main()” method,
- Declare and initialize the necessary variables.
- Create an object for “HashSet”.
- Create an object for “HashSetFromBook”.
- Execute “try” statement,
- Execute a loop,
- Get the string.
- Update the necessary values.
- Execute a loop,
- Catch if the exception occurs,
- Print the message.
- Print the output.
- Define the “main()” method,
Explanation of Solution
“Yes”, the multiply-add-divide (MAD) method decreases the collisions.
Explanation:
- The hash function is defined as follows,
Expert Solution & Answer

Want to see the full answer?
Check out a sample textbook solution
Students have asked these similar questions
1. What is the difference between a relative cell reference and an absolute cell reference and give an example of when you would use each.
What is the goal of using a chart in excel, and how is a chart useful and what is the goal of using sparklines in excel, and how are sparklines useful?
Prove for each pair of expression f(n) and g(n) whether f(n) is big O, little o Ω,ω or Θ of g(n). Use limits to find these. For each case it is possible that more than one of these conditions is satisfied:1. f(n) =log(n2^n), g(n) = log(sqrt(n)2^(n^2))2. f(n) =nsqrt(n) +log(n^n), g(n) =n + sqrt(n)logn
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
- Need this expression solved for mu. This can be done using a symbolic toolbox, however it needs to end up being mu = function (theta, m, L, g). If using MATLAB or something similar, run the code to make sure it works.arrow_forwardA business case scenario and asked to formulate an appropriate software design solution. Theyshould complete the case and upload the solution. will be required to read the case,identify and document the key issues, problems, and opportunities presented, and then design,and develop an appropriate integrated design solution to the problem. mustdemonstrate good spreadsheet, database, analytical, and word-processing skills whendeveloping solutions. Additionally, must be creative and demonstrate synthesising andapplying Database Management and Data Analytics Principles learned in the course. They willalso need to research some aspects of the assessment. CASE BACKGROUNDMGMT SS STATS, an umbrella body that facilitates and serves various Social SecurityOrganizations/Departments within the Caribbean territories, stoodpoised to meet the needs of its stakeholders by launching an onlinedatabase at www.SSDCI.gov. The database will provide membersand the public access to the complete set of…arrow_forwardA business case scenario and asked to formulate an appropriate software design solution. Theyshould complete the case and upload the solution. will be required to read the case,identify and document the key issues, problems, and opportunities presented, and then design,and develop an appropriate integrated design solution to the problem. mustdemonstrate good spreadsheet, database, analytical, and word-processing skills whendeveloping solutions. Additionally, must be creative and demonstrate synthesising andapplying Database Management and Data Analytics Principles learned in the course. They willalso need to research some aspects of the assessment. CASE BACKGROUNDMGMT SS STATS, an umbrella body that facilitates and serves various Social SecurityOrganizations/Departments within the Caribbean territories, stoodpoised to meet the needs of its stakeholders by launching an onlinedatabase at www.SSDCI.gov. The database will provide membersand the public access to the complete set of…arrow_forward
- Using MATLAB symbolic toolbox, given these 3 equations, how would you solve for mu = function(theta), making sure that there are no mu's on the right hand side, making sure theta-dot-dot, theta-dot-squared- and N aren't in the final answer either.arrow_forwardAfter playing our giving implementation, your task is to implement Dinning Philosophers with semaphore in C, by including and Your implementation will require creating five philosophers, each identified by a number 0.4. Each philosopher will run as a separate thread. Create threads using Pthreads as discussed in the Lecture slides on Chapter 4 and Practice Lab on Threads. Your solution needs to accomplish the following: Implement in C (15 points) 1. dp1.c - You are to provide your solution to this assignment as a single C program named 'dp1.c using semaphore. Explain in you code (as comments) that the dead lock will happen or not. If there is a possible deadlock, you can simply solve the deadlock by pick the fork in order like the first solution in our slides. Solve Deadlock by Footman (15 points) 1. Here is a new solution to overcome the deadlock. The Dining Philosophers decide to hire a footman whose task to allow only four philosophers to sit on the table. When entering and…arrow_forward8.4 Self-Bias Configuration 20. Determine Zi. Zo. and A,, for the network of Fig. 8.73 if gf, = 3000 μS and gos = 50 μs. 21. Determine Z, Zo, and A, for the network of Fig. 8.73 if the 20-uF capacitor is removed and the parameters of the network are the same as in Problem 20. Compare results with those of Problem 20. +12 V 3.3 ΚΩ HE C₂ Vo Z Zo C₁ 10 ΜΩ Z₁ 1.1 ΚΩ Cs 20 µF FIG. 8.73 Problems 20, 21, 22, and 59.arrow_forward
- 21. Determine Zi, Zo, and A, for the network of Fig. 8.73 if the 20-μF capacitor is removed and the parameters of the network are the same as in Problem 20. Compare results with those of Problem 20. +12 V 3.3 ΚΩ +6 C₂ C₁ Z₁ 10 ΜΩ 1.1 ΚΩ Cs 20 μF FIG. 8.73 Zoarrow_forwardNinth Edition Determine Zi, Zo and Av 20 V Zi + 1 ΜΩ 2 ΚΩ HH Z IDSS= 6MA Vp=-6V Yos = 40μS 20 and 47arrow_forwardWhat is the worst case time complexity of the following algorithm for i = 1 to x do for j = 2^((i-1)x) to 2^(in) do print(i,j)arrow_forward
- Prove for each pair of expression f(n) and g(n) whether f(n) is big O, little o Ω,ω or Θ of g(n). For each case it is possible that more than one of these conditions is satisfied:1. f(n) =log(n2^n), g(n) = log(sqrt(n)2^(n^2))2. f(n) =nsqrt(n) +log(n^n), g(n) =n + sqrt(n)lognarrow_forwardI need to make a parallel version of this sequential codearrow_forwardI need to make a parallel version of this sequential code.arrow_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