An open API service indexing awesome lists of open source software.

https://github.com/kydronepilot/swiftstudentchallenge2020

Winning submission to the 2020 Apple Swift Student Challenge
https://github.com/kydronepilot/swiftstudentchallenge2020

apple decision-trees sorting-algorithm swift-playground swiftui wwdc

Last synced: 16 days ago
JSON representation

Winning submission to the 2020 Apple Swift Student Challenge

Awesome Lists containing this project

README

          

# Swift Student Challenge 2020 - Exploring Sorting Algorithm Decision Trees

This is my playground submission to the 2020 WWDC Swift Student Challenge held
by Apple (accepted).

![Playground main page](./Resources/main_page.png)

## How it works

![Lesson page example](./Resources/2nd_lesson_page.png)

This playground first takes the user (a presumed CS student just learning the
basics) on an animated lesson, explaining how decision trees are used to
visualize how sorting algorithms work and to see which are more efficient.

![Algorithm analyzer page](./Resources/algorithm_analyzer_page.png)

![Decision tree display page](./Resources/decision_tree_display_page.png)

The playground then lets the user interact with a sorting algorithm analyzer,
which compares the decision trees of two sorting algorithms. The analyzer uses a
custom decision tree generator algorithm (developed by me) to generate the trees
for each sorting algorithm. The user can then compare the statistics of each
decision tree and view what the tree looks like.

If the user is ambitious, they can add their own algorithm to the playground and
see how it compares with the others.