Skip to content

Swift 4 Migration  #507

@kelvinlauKL

Description

@kelvinlauKL

Update

Thanks everyone for helping out with the migration! Another year, another migration complete :]


It's that time of the year again. Swift 4 is imminent, so it's time to begin migration. Swift 3 to Swift 4 has been relatively painless compared to other years, so things should go rather smoothly!

Migration Procedure:

  1. Choose a topic below that hasn't been checked off
  2. Check the pull requests to see if anyone is working on your chosen topic
  3. Make a pull request to let others know that you're currently working on your chosen topic
  • Add the following code snippet at the top of each playground file:
// last checked with Xcode 9.0b4
#if swift(>=4.0)
   print("Hello, Swift 4!")
#endif
  • Make sure the code for the topic compiles correctly with the latest Xcode 9 beta (currently beta 4).
  • Make sure that the README.md file reflects the updated playground

Current Progress

  • AVL Tree
  • All-Pairs Shortest Paths
  • Array2D
  • B-Tree
  • Binary Search Tree
  • Binary Search
  • Binary Tree
  • Bit Set
  • Bloom Filter
  • Bounded Priority Queue
  • Boyer-Moore
  • Breadth-First Search
  • Brute-Force String Search
  • Bubble Sort
  • Bucket Sort
  • Comb Sort
  • Combinatorics
  • Convex Hull
  • Count Occurrences
  • Counting Sort
  • Depth-First Search
  • Deque
  • Dijkstra Algorithm
  • DiningPhilosophers
  • Fixed Size Array
  • Fizz Buzz
  • GCD
  • Graph
  • Hash Set
  • Hash Table
  • HaversineDistance
  • Heap Sort
  • Heap
  • Huffman Coding
  • Insertion Sort
  • K-Means
  • Karatsuba Multiplication
  • Knuth-Morris-Pratt
  • Kth Largest Element
  • LRU Cache
  • Linear Regression
  • Linear Search
  • Linked List
  • Longest Common Subsequence
  • Merge Sort
  • Miller-Rabin Primality Test
  • Minimum Edit Distance
  • Minimum Spanning Tree (Unweighted)
  • Minimum Spanning Tree
  • MinimumCoinChange
  • Monty Hall Problem
  • Ordered Array
  • Ordered Set
  • Palindromes
  • Priority Queue
  • QuadTree
  • Queue
  • Quicksort
  • Rabin-Karp
  • Radix Sort
  • Radix Tree
  • Red-Black Tree
  • Ring Buffer
  • Rootish Array Stack
  • Run-Length Encoding
  • Segment Tree
  • Select Minimum Maximum
  • Selection Sampling
  • Selection Sort
  • Set Cover (Unweighted)
  • Shell Sort
  • Shortest Path (Unweighted)
  • Shuffle
  • Shunting Yard
  • Single-source Shortest Paths(Weighted)
  • Skip-List
  • Slow Sort
  • Stack
  • Strassen Matrix Multiplication
  • Ternary Search Tree
  • Threaded Binary Tree
  • Topological Sort
  • Treap
  • Tree
  • Trie
  • Two-Sum Problem
  • Union-Find
  • Z-Algorithm

Metadata

Metadata

Assignees

Labels

No labels
No labels

Type

No type

Projects

No projects

Milestone

No milestone

Relationships

None yet

Development

No branches or pull requests

Issue actions