Skip to content

bdsaglam/Swift6006

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 

History

41 Commits
 
 
 
 
 
 
 
 
 
 
 
 

Repository files navigation

Swift6006

This repository contains Swift implementations of algorithms and data structures covered in MIT's Introduction to Algorithms course.

Please, open issue for bugs, missing parts and requests.

Syllabus

Unit 1: Algorithmic thinking

  • Binary search
  • Peak finding, Array2D
  • Document distance

Unit 2: Sorting and Trees

  • Heap
  • Sort algorithms: insertion, merge, quick, heap
  • Binary Search Tree
  • AVL Tree
  • Linear sorting algorithms: counting, radix, bucket

Unit 3: Hashing

  • Hashing with chaining
  • Table doubling
  • Rolling hash, Karp-Robin
  • Open adressing

Unit 4: Numerics

  • Karatsuba multiplication
  • Newton's method

Unit 5: Graphs

  • Breadth-first search (BFS)
  • Depth-first search (DFS), topological sorting

Unit 6: Shortest Paths

  • Single source shortest paths problems
  • Dijkstra
  • Bellman-Ford

Unit 7: Dynamic Programming

  • Text justification
  • Crazy8
  • Edit distance
  • Knapsack
  • Longest sorted sub-sequence

About

Algorithms covered in MIT 6006 (2011) in Swift

Resources

License

Stars

Watchers

Forks

Packages

No packages published

Languages