Data Structures and Algorithms Visualization Tool

    7 Votes

Data Structures and Algorithms is a fundamental course in Computer Science. However, many students find it difficult because it requires abstract thinking. The best way to understand complex data structures is to see them in action. . It would be very helpful if there was a visualization tool of data structures such as arrays, queues, stacks, trees and graphs for students to experiment with. This project is intended to create such an exploration environment, in which students can learn through experimentation. We've developed interactive animations for a variety of data structures and algorithms. Our visualization tool is written in Java using Swing, and runs well under OS X, most flavors of Linux, and most flavors of Windows.

We have visualizations for the following data structures and algorithms:

  • Stacks (both array and linked list implementations)
  • Queues (both array and linked list implementations)
  • Binary Search Trees
  • Sorting Algorithms
    • Bubble Sort
    • Selection Sort
    • Insertion Sort

         This tool provides complete animation of common operations associated with the data structures, such as inserting an element into and deleting an element from stack and queue. It includes the animation of insertion, deletion and finding operation in binary search tree and the visualization of sorting algorithms such as bubble sort, selection sort and insertion sort. Ultimate gain of this project is that this tool can be used as an effective supplement to the traditional classroom education and textbooks for Data Structures and Algorithms courses.

The development of technologies and the evolvement of the World Wide Web have influenced education. Instructional Web sites and courses on the Web have grown dramatically. Web-based courses that consist of the syllabus, assignments and lecture notes are now widely used. Instructional Web sites that are dedicated to Data Structures and algorithms can be easily found by using Search Engines. However, the majority of the instructional web sites explored during this project lack interactive multimedia.

Feasibility study is a procedure that identifies, describes and evaluates candidate system and selects the best system for the job. An estimate is made of whether the identified user needs may be satisfied using current software and hardware technologies. The study will decide if the proposed system will be cost effective from a business point of view and if it can be developed given existing budgetary constraints. The key considerations involved in the feasibility analysis are economic, technical, behavioral and operational.  

Economic Feasibility

The economic analysis is to determine the benefits and savings that are expected from a candidate system and compare them with costs. The system we have proposed is economically feasible, as the organization possesses the hardware and software resources required for the functioning of the system. Any additional resources, if required, can also be easily acquired. The cost of the proposed system is considerably very low.

Technical Feasibility

It centers on the existing computer system and to what extent it can support the proposed addition. The minimum requirement of the proposed system includes a basic knowledge about Java and net beans, which is an IDE of java.

Operational Feasibility

The system operation is the longest phase in the development cycle of a system. So, operational stability should be given much importance. The users of the system are expected to have a knowledge about the commonly used data structures such as stack, queue, binary search tree and also about the different sorting algorithms which include bubble sort, selection sort and insertion sort. The ideas can be more clarified by giving these data structures and sorting algorithms a graphical visualization, which is finally accomplished by the proposed system.

Behavioral Feasibility

In today’s world, computer is an inevitable entity. All the computer  students who are aware of the data structures and also about the sorting algorithms can use the graphical implementation done by our proposed system to supplement the traditional instructions.

Download this file (Data Structures and Algorithms Visualization Tool.pdf)Data Structures and Algorithms Visualization Tool [Mini Project Report]336 Kb

Popular Videos

How to speak to people

How to speak so that people want to listen.

Got a tip or Question?
Let us know

Related Articles

Travel Planner using Genetic Algorithm
Data Recovery and Undeletion using RecoverE2
Routino Router Algorithm
Data Leakage Detection
Scene Animation System Project
Paint Program in C
Solving 0-1 Knapsack Problem using Genetic Algorithm
Software Watermarking Project
Android Gesture Recognition
Internet working between OSI and TCP/IP Network Managements with Security Features Requirements
Web Image Searching Engine Using SIFT Algorithm
Remote Wireless Sensor Networks for Water Quality Monitoring Requirements
Ranking Spatial Data by Quality Preferences
Scalable Learning Of Collective Behaviour
Computational Metaphor Extraction And Interpretation
Designing a domain independent Rules Engine For Business Intelligence
Graph Colouring Algorithm
Gesture Based Computing
Facial Expression Detection