/VisualBinaryTrees

Visual Binary Trees with Swift 3 Playgrounds

Primary LanguageSwiftGNU General Public License v3.0GPL-3.0

Visual Binary Trees with Swift 3 Playgrounds

Language License

obj-c

Blogs

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
  • Written in latest Swift 3 / Xcode 8

TODOs

  • A version as an embeddable framework under MIT license
  • TBD

Docs

Initial docs, generated with jazzy and hosted by GitHub Pages.

Usage

  1. Download or Clone the repository
$ git clone https://github.com/akpw/VisualBinaryTrees
  1. Open the playground in Xcode
$ cd VisualBinaryTrees
$ open VisualBinaryTrees.playground -a Xcode-beta.app
  1. Optionally, you can also switch to the VisualBinaryTreeApp folder and open & run the included sample app:
$ cd VisualBinaryTreeApp
$ open VisualBinaryTree.xcodeproj -a Xcode-beta.app

Requirements

  • latest Xcode 8
  • iOS9 (requires iOS10 to run in the Swift Playgrounds for iPad)