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 17PE
Program Plan Intro

Implementation of hash set

Program plan:

  • In a file “HashSet.java”, import necessary package, and create a class “HashSet”,
    • Declare the array of “Node” 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 “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 current node value.
      • Execute loop till array becomes null,
        • Check the condition,
          • Return true.
            • Assign the current value.
    • 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 hash code value to the current node.
      • Execute a loop,
        • Check the condition,
          • Return false.
            • Assign the next value to the value in the current node.
      • 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 true.
    • 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.
      • 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”,
      • 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 “asNext()”,
        • Check whether the next node contains null,
          • If it is true, returns true.
              • Check whether the current node and the next of the current node is not null,
                • Assign the next of the current node value to the next node.
                • Return true.
              • Execute a loop,
                • Check whether the bucket contains not null value,
                  • If it is true, assign the bucket value to the next node.
                  • Assign the value to the bucket.
                  • Returns true.
              • Returns false.
      • Define the method “next()”,
        • Check the condition,
          • Throw an exception “NoSuchElementException”.
              • Assign the next node value to the current node value.
              • Assign the null value to the next node.
              • Return the current node value.
      • Define the method “remove()”,
        • Throw an exception “UnsupportedOperationException”.
  • In a file “HashSetTest.java”, import necessary package, and create a class “HashSetTest”,
    • Define the “main()” method,
      • Create an object fro “HashSet”.
      • Add the element “Tom” to the set.
      • Add the element “Jerry” to the set.
      • Add the element “Nick” to the set.
      • Add the element “James” to the set.
      • Add the element “Johny” to the set.
      • Add the element “David” to the set.
      • Add the element “Else” to the set.
      • Add the element “Joy” to the set.
      • Add the element “Francis” to the set.
      • Add the element “Jenny” to the set.
      • Add the element “Casendra” to the set.
      • Add the element “Juliet” to the set.
      • Remove the element “Juliet” from the set.
      • Remove the element “Jaen” from the set.
      • Create Iterator.
      • Execute a loop,
        • Print the next element in the set.

Blurred answer
Students have asked these similar questions
Write a c++ program that will count from 1 to 10 by 1. The default output should be: 1, 2, 3, 4, 5, 6 , 7, 8, 9, 10 There should be only a newline after the last number. Each number except the last should be followed by a comma and a space. To make your program more functional, you should parse command line arguments and change behavior based on their values. Argument Parameter Action -f, --first yes, an integer Change place you start counting -l, --last yes, an integer Change place you end counting -s, --skip optional, an integer, 1 if not specified Change the amount you add to the counter each iteration -h, —help none Print a help message including these instructions. -j, --joke none Tell a number based joke. So, if your program is called counter, counter -f 10 --last 4 --skip 2 should produce 10, 8, 6, 4 Please use the last supplied argument. If your code is called counter, counter -f 4 -f 5 -f 6 should count from 6. You should…
show work
show work on paper

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