# Fall 2002 CSCI 333 Homework 3 Solution

## Problem 1

Show how to construct the following two lists using a class `IntList` that implements `List<int>`, as described in the textbook.

• ````<2002 | >`
```
``````IntList *IL = new IntList() ;
IL->insert(2002) ;
IL->next() ;```
```
• ````<2002 | 343, 17>;`
```
``````IntList *IL = new IntList() ;
IL->insert(2002) ;
IL->next() ;
IL->insert(343) ;
IL->append(17) ;```
```

## Problem 2

Build a binary search tree by starting with an empty tree and then adding, in order, the eight values 25, 14, 20, 11, 99, 77, 33, and 50.

The following diagram is still wrong. The node at the top should be contain 25, not 13.

## Problem 3

Now show the binary search tree that results from removing, in order, the values 77 and 25 from the tree you constructed in Problem 2.

In the tabular display of the running of the heap algorithms, elements that are being compared are shown with a light red background while elements that are being moved are shown with a light green background.

## Problem 4

Start with an array containing the six values 13, 14, 20, 11, 99, 77, and 33 stored sequentially in this order. Now "run" the efficient heap building procedure described in Section 5.5 and illustrated in Figure 5.21(b) on this array to build a minheap stored within an array.

 13 14 20 11 99 77 33 13 14 20 11 99 77 33 13 11 20 14 99 77 33 13 11 20 14 99 77 33 13 11 20 14 99 77 33 11 13 20 14 99 77 33 11 13 20 14 99 77 33

## Problem 5

Remove the two smallest elements from the heap created in Problem 3. Be sure to restore the heap to the proper format.

 11 13 20 14 99 77 33 33 13 20 14 99 77 33 13 20 14 99 77 13 33 20 14 99 77 13 33 20 14 99 77 13 14 20 33 99 77 77 14 20 33 99 77 14 20 33 99 14 77 20 33 99 14 77 20 33 99 14 33 20 70 99

## Problem 6

Add the elements 88 and 12 to the heap created in Problem 4. Again, be sure to restore the heap to the proper format.

 11 13 20 14 99 77 33 88 11 13 20 14 99 77 33 88 11 13 20 14 99 77 33 88 12 11 13 20 14 99 77 33 88 12 11 13 20 12 99 77 33 88 14 11 13 20 12 99 77 33 88 14 11 12 20 13 99 77 33 88 14 11 12 20 13 99 77 33 88 14