syrilj/Data-Structures-and-Algo-App
Folders and files
| Name | Name | Last commit date | ||
|---|---|---|---|---|
Repository files navigation
ENSF 338 FINAL PROJECT
Objective
The objective of this project is to create a library for common data structures and their associated algorithms. The library will include linear data structures, tree structures, vector-based heaps, and graph algorithms. The library will be implemented using Java.
Implemention
The library will be created with a package name "myLib" and will have a multilevel structure to separate each group of data structures into groups based on their class. The library will split into two main subfolders: "Datastructures" and "Graphalgo".
The "Datastructures" folder will contain subfolders for each class of data structures that will be implemented. The "Linear" subfolder will have class implementations of linked lists (SinglyLinkedList, DoublyLinkedList, CircularLinkedList, and CircularDoublyLinkedList), stack, and queue. The "Trees" subfolder will have implementations of binary search trees and AVL trees. The "Heaps" subfolder will have two implementations of the vector-based heap class, one for max heap and one for min heap. The "Nodes" subfolder will have the implementation of all the different node classes needed for the data structures mentioned above.
The "Graphalgo" folder will have a static class with static methods that apply the different graph algorithms mentioned.
Testing
To test all functionalities of the data structure we wrote a main app program that will comprehensively test the data structures .
Group members:
Syril Jacob UCID: 30145947
Prosper Ademoye UCID: 30143058
We finished the assignments and attempted all the bonuses including
- AVL Balancing constructor
- AVL delete with balancing updates
- Implementing module 3 which was the heaps section
- Implementing module 4 which was the Graphs section