Question: You need to define the following data types. ELEMENT is a data type that contains a field named key, which is of type int. Note

 You need to define the following data types. ELEMENT is a

data type that contains a field named key, which is of type

int. Note that ELEMENT should not be of type int. HEAP is

a data type that contains three fields named capacity (of type int),

size (of type int), and H (an array of type ELEMENT with

index ranging from 0 to capacity). The functions that you are required

You need to define the following data types. ELEMENT is a data type that contains a field named key, which is of type int. Note that ELEMENT should not be of type int. HEAP is a data type that contains three fields named capacity (of type int), size (of type int), and H (an array of type ELEMENT with index ranging from 0 to capacity). The functions that you are required to implement are Initialize(n) which returns an object of type HEAP with capacity n and size 0. This function requires you to perform dynamic memory allocation, given the demand. BuildHeap(heap, A), where heap is a HEAP object and A is an array of type ELEMENT. This function copies the elements in A into heap->H (starting from H1] and uses the linear time build heap algorithm to obtain a min-heap of s ize from the given array A. Insert(heap, k, flag) which inserts an element with key equal to k into the min-heap heap. When flag-0, the function does not do any additional printing. When flag-1, the function prints out the heap content before the insertion, and the heap content after the insertion. . DeleteMin(heap, flag) which deletes the element with minimum key and returns it to the caller When flag-0, the function does not do any additional printing. When flag-1, the function prints out the heap content before the deletion, and the heap content after the deletion. You need to define the following data types. ELEMENT is a data type that contains a field named key, which is of type int. Note that ELEMENT should not be of type int. HEAP is a data type that contains three fields named capacity (of type int), size (of type int), and H (an array of type ELEMENT with index ranging from 0 to capacity). The functions that you are required to implement are Initialize(n) which returns an object of type HEAP with capacity n and size 0. This function requires you to perform dynamic memory allocation, given the demand. BuildHeap(heap, A), where heap is a HEAP object and A is an array of type ELEMENT. This function copies the elements in A into heap->H (starting from H1] and uses the linear time build heap algorithm to obtain a min-heap of s ize from the given array A. Insert(heap, k, flag) which inserts an element with key equal to k into the min-heap heap. When flag-0, the function does not do any additional printing. When flag-1, the function prints out the heap content before the insertion, and the heap content after the insertion. . DeleteMin(heap, flag) which deletes the element with minimum key and returns it to the caller When flag-0, the function does not do any additional printing. When flag-1, the function prints out the heap content before the deletion, and the heap content after the deletion

Step by Step Solution

There are 3 Steps involved in it

1 Expert Approved Answer
Step: 1 Unlock blur-text-image
Question Has Been Solved by an Expert!

Get step-by-step solutions from verified subject matter experts

Step: 2 Unlock
Step: 3 Unlock

Students Have Also Explored These Related Databases Questions!