Ecosyste.ms: Awesome
An open API service indexing awesome lists of open source software.
https://github.com/akpw/VisualBinaryTrees
Visual Binary Trees with Swift 3 Playgrounds
https://github.com/akpw/VisualBinaryTrees
Last synced: 4 days ago
JSON representation
Visual Binary Trees with Swift 3 Playgrounds
- Host: GitHub
- URL: https://github.com/akpw/VisualBinaryTrees
- Owner: akpw
- License: gpl-3.0
- Created: 2016-08-25T06:01:54.000Z (about 8 years ago)
- Default Branch: master
- Last Pushed: 2016-09-12T13:15:42.000Z (about 8 years ago)
- Last Synced: 2024-04-22T12:31:21.142Z (7 months ago)
- Language: Swift
- Size: 224 KB
- Stars: 58
- Watchers: 3
- Forks: 0
- Open Issues: 2
-
Metadata Files:
- Readme: README.md
- License: LICENSE
Awesome Lists containing this project
- Awesome-Swift-Playgrounds - Visual Binary Trees - Effortless visualization of arbitrary Binary Trees, along with their pluggable traversal implementations. 🌟 (Theoretical Computer Science / Algorithms and Data Structures)
README
Visual Binary Trees with Swift 3 Playgrounds
============![Language](https://img.shields.io/badge/language-Swift3-orange.svg)
![License](https://img.shields.io/badge/License-GNU%20GPL-blue.svg)![obj-c](http://www.akpdev.com/images/tree4.png)
## Blogs
* [Visual Binary Trees with Swift 3 Playgrounds: Introduction](http://www.akpdev.com/articles/2016/08/26/BinaryTreesPlayground.html)
* [Part I: QuickLook-able Binary Tree with Pluggable Traversals](http://www.akpdev.com/articles/2016/08/27/BinaryTreesPlayground-Part-I.html)
* [Part II: The Drawing Architecture, Customization, and Tree Layouts](http://www.akpdev.com/articles/2016/09/08/BinaryTreesPlayground-Part-II.html)## Features
* Effortless visualization of arbitrary Binary Trees, along with their (pluggable) traversals
* Works with trees implemented both as reference types and as Swift enums
* By default, builds Optimal Tree Layout in O(n) time
* Supports multiple tree layouts and various drawing configurations
* A standalone playground with practical examples, ready to run in Xcode and in [Swift Playgrounds for iPad](https://www.apple.com/swift/playgrounds/)
* Written in latest Swift 3 / Xcode 8## TODOs
* A version as an embeddable framework under MIT license
- [ ] TBD## Docs
[Initial docs][docsLink], generated with [jazzy](https://github.com/realm/jazzy) and hosted by [GitHub Pages](https://pages.github.com).## Usage
1) Download or Clone the repository
```bash
$ git clone https://github.com/akpw/VisualBinaryTrees
```3) Open the playground in Xcode
```bash
$ cd VisualBinaryTrees
$ open VisualBinaryTrees.playground -a Xcode-beta.app
```4) Optionally, you can also switch to the `VisualBinaryTreeApp` folder and open & run the included sample app:
```bash
$ cd VisualBinaryTreeApp
$ open VisualBinaryTree.xcodeproj -a Xcode-beta.app
```# Requirements
* latest Xcode 8
* iOS9 (requires iOS10 to run in the Swift Playgrounds for iPad)[docsLink]:https://akpw.github.io//VisualBinaryTrees/index.html