EBK BIG JAVA: EARLY OBJECTS, INTERACTIV
EBK BIG JAVA: EARLY OBJECTS, INTERACTIV
6th Edition
ISBN: 8220102010314
Author: Horstmann
Publisher: YUZU
Question
Book Icon
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.
            • 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()”.
            • 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.
            • 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.
            • Returns true.
    • 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 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.
    • 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()”.
    • 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.
      • 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 “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.

Blurred answer
Students have asked these similar questions
reminder it an exercice not a grading work             GETTING STARTED Open the file SC_EX19_EOM2-1_FirstLastNamexlsx, available for download from the SAM website. Save the file as SC_EX19_EOM2-1_FirstLastNamexlsx by changing the “1” to a “2”. If you do not see the .xlsx file extension in the Save As dialog box, do not type it. The program will add the file extension for you automatically. With the file SC_EX19_EOM2-1_FirstLastNamexlsx still open, ensure that your first and last name is displayed in cell B6 of the Documentation sheet. If cell B6 does not display your name, delete the file and download a new copy from the SAM website. Brad Kauffman is the senior director of projects for Rivera Engineering in Miami, Florida. The company performs engineering projects for public utilities and energy companies. Brad has started to create an Excel workbook to track estimated and actual hours and billing amounts for each project. He asks you to format the workbook to make the…
Need help completing this algorithm here in coding! 2
Whats wrong the pseudocode here??

Chapter 16 Solutions

EBK BIG JAVA: EARLY OBJECTS, INTERACTIV

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