Introduction to Java Programming and Data Structures, Comprehensive Version (11th Edition)
11th Edition
ISBN: 9780134670942
Author: Y. Daniel Liang
Publisher: PEARSON
expand_more
expand_more
format_list_bulleted
Question
Chapter 23, Problem 23.11PE
Program Plan Intro
Heap clone and equals
Program Plan:
- Import the required packages.
- Declare and initialize the required variables.
- Create a class “Sorting”:
- Define the main method
- A new heap gets defined.
- Add the elements into the heap.
- Compare the heap values that are generated.
- Define the main method
- Define the class “Heap”
- New array list gets created.
- New empty heap gets created.
- Define the class “Heap”
- New list gets defined.
- New heap empty gets created.
- Define the method “Heap()”
- Loop that iterates to add the elements into the heap.
- Define the method “add()”
- Add the object.
- Loop that iterates for the values present and add them after validation.
- Define the method “remove()”
- Condition to validate the elements of the list
- Loop that iterates to remove the elements present in the list.
- Define the method “getSize()”
- Size of the list gets returned.
- Define the object clone
- New heap gets created.
- Clone of the array list gets created.
- Return the clone of the heap.
- Define the method “equals”
- Condition to validate the heap.
- Return true or false after validation.
Expert Solution & Answer
Want to see the full answer?
Check out a sample textbook solutionStudents have asked these similar questions
(Heap clone and equals)
Class Name: Exercise23_11Implement the clone and equals methods in the Heap class.Sample Run
heap1: 6
heap2: 6
equals? true
heap1: 5
heap2: 6
equals? false
(True/False): Local variables are created by adding a positive value to the stack pointer
(Please Help. My professor did not teach us any of this and will not answer my emails)
Design a class named Queue for storing integers. Like a stack, a queue holds elements. In a stack, the elements are retreived in a last-in-first-out fashion. In a queue, the elements are retrieved in a first-in-first-out fashion. The class contains:
An int[] data field named elements that stores the int values in the queue
A data field named size that stores the number of elements in the queue
A constructor that creates a Queue object with defult capacity 8
The method enqueue(int v) that adds v into the queue
The method empty () that returns true if the queue is empty
The method getSize() that returns the size of the queue
Chapter 23 Solutions
Introduction to Java Programming and Data Structures, Comprehensive Version (11th Edition)
Ch. 23.2 - Prob. 23.2.1CPCh. 23.2 - Prob. 23.2.2CPCh. 23.2 - Prob. 23.2.3CPCh. 23.3 - Prob. 23.3.1CPCh. 23.3 - Prob. 23.3.2CPCh. 23.3 - Prob. 23.3.3CPCh. 23.4 - Prob. 23.4.1CPCh. 23.4 - Prob. 23.4.2CPCh. 23.4 - What is wrong if lines 615 in Listing 23.6,...Ch. 23.5 - Prob. 23.5.1CP
Ch. 23.5 - Prob. 23.5.2CPCh. 23.5 - Prob. 23.5.3CPCh. 23.5 - Prob. 23.5.4CPCh. 23.6 - Prob. 23.6.1CPCh. 23.6 - Prob. 23.6.2CPCh. 23.6 - Prob. 23.6.3CPCh. 23.6 - Prob. 23.6.4CPCh. 23.6 - Prob. 23.6.5CPCh. 23.6 - Prob. 23.6.6CPCh. 23.6 - Prob. 23.6.7CPCh. 23.6 - Prob. 23.6.8CPCh. 23.6 - Prob. 23.6.9CPCh. 23.7 - Prob. 23.7.1CPCh. 23.7 - Prob. 23.7.2CPCh. 23.8 - Prob. 23.8.1CPCh. 23 - Prob. 23.1PECh. 23 - Prob. 23.2PECh. 23 - Prob. 23.3PECh. 23 - (Improve quick sort) The quick-sort algorithm...Ch. 23 - (Check order) Write the following overloaded...Ch. 23 - Prob. 23.7PECh. 23 - Prob. 23.8PECh. 23 - Prob. 23.10PECh. 23 - Prob. 23.11PECh. 23 - Prob. 23.12PECh. 23 - Prob. 23.13PECh. 23 - (Selection-sort animation) Write a program that...Ch. 23 - (Bubble-sort animation) Write a program that...Ch. 23 - (Radix-sort animation) Write a program that...Ch. 23 - (Merge animation) Write a program that animates...Ch. 23 - (Quicksort partition animation) Write a program...Ch. 23 - (Modify merge sort) Rewrite the mergeSort method...
Knowledge Booster
Similar questions
- (True/False): Arrays are passed by reference to avoid copying them onto the stackarrow_forwardC++ CODE PLEASE Using an array to represent the min-max heap structure , implement the following operations. (in c++ programming language) 1. buildHeap : Builds a min-max heap from a list of naturals read from standard input. 2. findMin and findMax : Returns the minimum (resp the maximum) element. 3. insertHeap : Inserts a new element into the min-max heap. 4. deleteMin and deleteMax : Deletes the minimum (resp the maximum) element. NOTE: min-max should be in one heap structure only and not separate heap structure for min and max. Only one heap for both min and max. Root should be min level, the level below root should be max level,then level after that should again be min level and so on.arrow_forward(Java) In this task, a skip list data structure should be implemented. You can follow the followinginstructions:- Implement the class NodeSkipList with two components, namely key node and arrayof successors. You can also add a constructor, but you do not need to add anymethod.- In the class SkipList implement a constructor SkipList(long maxNodes). The parameter maxNodes determines the maximal number of nodes that can be added to askip list. Using this parameter we can determine the maximal height of a node, thatis, the maximal length of the array of successors. As the maximal height of a nodeit is usually taken the logarithm of the parameter. Further, it is useful to constructboth sentinels of maximal height.- In the class SkipList it is useful to write a method which simulates coin flip andreturns the number of all tosses until the first head comes up. This number representsthe height of a node to be inserted.- In the class SkipList implement the following methods:(i) insert, which…arrow_forward
- (IN JAVA) In this task, a binomial heap should be implemented. A binomial heap is implemented byan array with its elements being binomial trees: on the first place there is the binomial treeB0 with one element, on the second place there is the binomial tree B1 with two elements,on the third place there is the binomial tree B2 with four elements,. . . Each binomial treeis implemented recursively using the class BinomialNode. In this class there is nothing toimplement. Methods in this class are needed for the implementation of the methods in theclass BinomialHeap. More precisely, in the class BinomialHeap you should implement thefollowing methods:(i) insert, which takes an integer (a key) and inserts it in the binomial heap. Themethod returns true, if the key is successfully inserted and false otherwise. In thecase, if the array should be resized, use the method resizeArray (see below).(ii) getMin, which returns the minimal key in binomial heap. The implementation willbe also efficient…arrow_forward(In java) In this task, a binomial heap should be implemented. A binomial heap is implemented byan array with its elements being binomial trees: on the first place there is the binomial treeB0 with one element, on the second place there is the binomial tree B1 with two elements,on the third place there is the binomial tree B2 with four elements,. . . Each binomial treeis implemented recursively using the class BinomialNode. In this class there is nothing toimplement. Methods in this class are needed for the implementation of the methods in theclass BinomialHeap. More precisely, in the class BinomialHeap you should implement thefollowing methods:(i) insert, which takes an integer (a key) and inserts it in the binomial heap. Themethod returns true, if the key is successfully inserted and false otherwise. In thecase, if the array should be resized, use the method resizeArray (see below).(ii) getMin, which returns the minimal key in binomial heap. The implementation willbe also efficient…arrow_forward(In java) In this task, a binomial heap should be implemented. A binomial heap is implemented byan array with its elements being binomial trees: on the first place there is the binomial treeB0 with one element, on the second place there is the binomial tree B1 with two elements,on the third place there is the binomial tree B2 with four elements,. . . Each binomial treeis implemented recursively using the class BinomialNode. In this class there is nothing toimplement. Methods in this class are needed for the implementation of the methods in theclass BinomialHeap. More precisely, in the class BinomialHeap you should implement thefollowing methods:-> delMin, which deletes the minimal key from the binomial heap. The method returnstrue, if the minimal key is successfully deleted and false otherwise (if the binomialheap is empty).-> resizeArray, which extends the array. The method is needed, for example, whenyou find out that you need an extra place in your array when inserting new…arrow_forward
- (In java) In this task, a binomial heap should be implemented. A binomial heap is implemented byan array with its elements being binomial trees: on the first place there is the binomial treeB0 with one element, on the second place there is the binomial tree B1 with two elements,on the third place there is the binomial tree B2 with four elements,. . . Each binomial treeis implemented recursively using the class BinomialNode. In this class there is nothing toimplement. Methods in this class are needed for the implementation of the methods in theclass BinomialHeap. More precisely, in the class BinomialHeap you should implement thefollowing methods:-> delMin, which deletes the minimal key from the binomial heap. The method returnstrue, if the minimal key is successfully deleted and false otherwise (if the binomialheap is empty).-> resizeArray, which extends the array. The method is needed, for example, whenyou find out that you need an extra place in your array when inserting new…arrow_forwardTopic: Singly Linked ListImplement the following functions in C++ program. Read the question carefully. (See attached photo for reference) int count(int num) This will return the count of the instances of the element num in the list. In the linked list in removeAll method, having the method count(10) will return 3 as there are three 10's in the linked list. Additionally, you are to implement these methods: bool move(int pos1, int pos2) This method will move the element at position pos1 to the position specified as pos2 and will return true if the move is successful. This will return false if either the specified positions is invalid. In the example stated, operating the method move(1, 3) will move the 1st element and shall now become the 3rd element. The linked list shall now look like: 30 -> 40 -> 10 -> 50 int removeTail() This method will remove the last element in your linked list and return the said element. If the list is empty, return 0. You can use the…arrow_forwardPlease use Python for this question: Inheritance (based on 8.38) You MUST use inheritance for this problem. A stack is a sequence container type that, like a queue, supports very restrictive access methods: all insertions and removals are from one end of the stack, typically referred to as the top of the stack. A stack is often referred to as a last-in first-out (LIFO) container because the last item inserted is the first removed. Implement a Stack class using Note that this means you may be able to inherit some of the methods below. Which ones? (Try not writing those and see if it works!) Constructor/_init__ - Can construct either an empty stack, or initialized with a list of items, the first item is at the bottom, the last is at the top. push() – take an item as input and push it on the top of the stack pop() – remove and return the item at the top of the stack isEmpty() – returns True if the stack is empty, False otherwise [] – return the item at a given location, [0] is at…arrow_forward
- Topic: Singly Linked ListImplement the following functions in C++ program. Read the question carefully. (See attached photo for reference) void isEmpty() This method will return true if the linked list is empty, otherwise return false. void clear() This method will empty your linked list. Effectively, this should and already has been called in your destructor (i.e., the ~LinkedList() method) so that it will deallocate the nodes created first before deallocating the linked list itself.arrow_forward(Heap clone and equals) JAVA Class Name: Exercise23_1Implement the clone and equals methods in the Heap class.Use the template at https://liveexample.pearsoncmg.com/test/Exercise23_11.txt for your code.Sample Run heap1: 6 heap2: 6 equals? true heap1: 5 heap2: 6 equals? false extra info: I keep getting these errors Compiler error: class Exercise23_11 is already defined in package unnamed package public class Exercise23_1 { ^ Compiler error: class Heap is already defined in class Exercise23_1 public static class Heap implements Cloneable { ^ Compiler error: clone() has protected access in Object Heap heap2 = (Heap)(heap1.clone()); ^ Compiler error: non-static class Heap.Exercise23_1.Heap cannot be referenced from a static context Heap heap1 = new Heap(strings); ^ Compiler error: non-static class Heap.Exercise23_1.Heap cannot be referenced from a static context Heap heap1 = new Heap(strings); ^ Compiler error: non-static class Heap.Exercise23_1.Heap cannot be referenced from a static…arrow_forward(Python) Implement and test a heapSort function that uses heap sort algorithm to sort a heap. You can treat the heap as a list object but do NOT use python's built-in sorted() function to sort the heap.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