sorters and place
these files in that package:
Sorter.java
SorterThread.java
AnimatedSortPanel.java
AnimatedSorting.java
Update.java
AnimationThread.java
Sorter class in this project.
Implement the following classes, each of which extends Sorter:
MergeSorter.java
HeapSorter.java
QuickSorter.java
BubbleSorter.java
and
InsertionSorter.java
contain one-line main() methods for testing without the use of
the GUI. Be sure to test your other four implementations in a similar manner.
There will be three total threads running within AnimatedSorting:
AnimationThread class. The strategy is as follows:
Sorter class) will send
Update objects via the sendUpdate() method.
AnimationThread object will maintain a queue of
Update objects.
sendUpdate() should add to the queue.
java.util.concurrent that implements the
BlockingQueue interface.
run() method will remove Update objects
from the queue and call the update() method of the
AnimatedSortPanel class to change the state of the
graph of the array element locations. It will ensure that queue removals
do not happen any more frequently than the interval specified in the
constructor call.