📒 Algorithms and Data Structures. The used approach attempts to fully utilize the Swift and POP.
Last Update: 18/July/2021.
The repository contains examples of common Algorithms
and Data Structures
implemented using the latest stable version of Swift
programming language. The development attempts to fully utilize Standard Library
and Protocol-Oriented
paradigm. The project provides interactive visualizations using SpriteKit
and SceneKit
frameworks (in development).
Each major section will be wrapped into a separete .playground
file, meaning that data structures
and algorithms
will be separeted for convenient management. :octocat:
The following list contains interactive visualizations that were implemented as part of the project. In majority of cases you can interact with a data structure
or algorithm
through a number of UI
controlls. Visualizations are implemented using SpriteKit
framework and are intended to explain the work of data structures
and algorithms
in a more highlevel way, which is a great way to learn especially if you are a beginner or you aren't familiar with something listed in the repository.
Stack visalization has two main UI controlls: push
and pop
. They perform corresponding operations: adding a new book at the top of the stack and removing the top book from the stack. Also there is a label that shows how many books are in the stack. Since the screen size is limited and for the sake of simplicity, the number of books in stack is limited.
Queue visualization is similar to Stack interactive visualization: it has two main UI
controls that allow you to interact with the interface of the Queue
data structure for enqueue
and dequeue
operations. You can see the number of animals in the queue as well.
THE PROJECT IS UNDER MIT LICENCE