There will be three main groups of API function calls. The first group controls a Block World that can be used to demostrate sorting algorithms. The second group will control a Graph World that can be used to demonstrate graph algorithms. The third group will control a Stack World that can be used to demonstrate recursion. The Block World API will be illustrated by providing animations for quicksort, bubblesort, and mergesort. The Graph World API will be demonstrated by providing animations for heaps and for Dijkstra's algorithm for single-source shortest paths. The Stack World API will be demonstrated by providing an animation for the Towers of Hanoi problem. Input to the algorithms will give the user the option of using random data or input from a file. Data structures will be illustrated using human-centric pictures representing trees and graphs. The user will be able to control the animation one step at a time in response to a button push, or as a smooth animation. Text description of each step of the algorithm will also be provided in the user interface. The application will also create Microsoft Visual C++ projects for each algorithm at the touch of a button. We will provide Visual C++ project and full source code for Algorithm Explorer so that developers can use the existing API to animations more algorithms, and to extend the API to more classes of animations. This project is funded by a grant from Microsoft Corporation. |
|
|
|
Ian Parberry Principal Investigator |
Erik Carson Programmer |
Downloads |