BIG JAVA: LATE OBJECTS
BIG JAVA: LATE OBJECTS
2nd Edition
ISBN: 9781119626220
Author: Horstmann
Publisher: WILEY
Question
Book Icon
Chapter 16, Problem 15PP
Program Plan Intro

To implement a hash table with quadratic probing

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 “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.
    • 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.
    • 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.
    • 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 sequence 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,
            • Check the condition,
              • Continue to skip nulls.
            • Assign the current bucket value to object.
            • Assign null value to bucket.
            • Decrement current size.
            • Call the method “add()”.
          • Returns true.
    • Create a class “HashSetIterator”,
      • Declare the variable to denote bucket index.
      • Define the constructor that create 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.
    • Define the method “size()” to return the size.
    • 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.
    • 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 “James” into the set.
      • Add the name “David” into the set.
      • Add the name “John” into the set.
      • Add the name “Kean” into the set.
      • Add the name “Juliet” into the set.
      • Add the name “Lilly” into the set.
      • Print the object properties.
      • Print the expected output.
      • Initialize the array.
      • Iterate over the names,
        • Print the actual and expected output.
      • Remove the name “John” from the set.
      • Print the set and expected output.

Blurred answer
Students have asked these similar questions
MGMT 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 services that can (also)be initiated face-to-face, and it will provide managed, private, secure access to a repository ofpublic and/or personal information. Ideally, the database will have basic details of pensionplans recorded in the registry, member plan statistics, and cash inflows and outflows frompension funds.For example, insured persons accumulate contributions. Records for these persons will includeinformation on the insured persons able to acquire various benefits once work is interrupteddue to sickness, death, retirement, and maternity or employment injury. They will also includeinformation on pensions such as invalidity, disability, and survivors that stem from…
(c) Consider the following set of processes: Process ID Arrival Time Priority Burst Time A 2 3 100 B 6 C 10 1 (highest) 2 40 80 D 16 4 (lowest) 20
(3c) In the following resource allocation graph, is the state a deadlocked one? If so which ones are deadlocked? (3 points) Resource allocation graph. R₁ = Resource, P = process. R1 R3 R3 7

Chapter 16 Solutions

BIG JAVA: LATE OBJECTS

Knowledge Booster
Background pattern image
Similar questions
SEE MORE QUESTIONS
Recommended textbooks for you
Text book image
Database System Concepts
Computer Science
ISBN:9780078022159
Author:Abraham Silberschatz Professor, Henry F. Korth, S. Sudarshan
Publisher:McGraw-Hill Education
Text book image
Starting Out with Python (4th Edition)
Computer Science
ISBN:9780134444321
Author:Tony Gaddis
Publisher:PEARSON
Text book image
Digital Fundamentals (11th Edition)
Computer Science
ISBN:9780132737968
Author:Thomas L. Floyd
Publisher:PEARSON
Text book image
C How to Program (8th Edition)
Computer Science
ISBN:9780133976892
Author:Paul J. Deitel, Harvey Deitel
Publisher:PEARSON
Text book image
Database Systems: Design, Implementation, & Manag...
Computer Science
ISBN:9781337627900
Author:Carlos Coronel, Steven Morris
Publisher:Cengage Learning
Text book image
Programmable Logic Controllers
Computer Science
ISBN:9780073373843
Author:Frank D. Petruzella
Publisher:McGraw-Hill Education