/Algo-1

The first edition of the algo course in Hack Bulgaria

Primary LanguageJava

Algo-1

The first edition of the algo course in Hack Bulgaria

Partners

The course is happening thanks to:

Nemetschek Bulgaria SAP Labs Bulgaria Chaos Group Ontotext

Course Program

The topics that we cover at the Algorithms course.

Lecture 1 - Intro, analysis and data structures

  • Course introduction
  • Algorithm analysis
    • Execution instructions
    • Asymptotic analysis
    • Algorithm complexity and Big Oh notation
    • Best/wrost case analysis
  • Linear data structures
    • Array
    • List
    • Vector
    • Queue/Stack

Lecture 2 - Sorting

Lecture 3 - Searching

Lecture 4, 5 - Binary trees

Lecture 6 - Binary Indexed Tree & Range Minimum Queries

Lecture 7 - Graphs - Properties, representation and traversals

Lecture 8 - Graphs - Topological sorting

Lecture 9 - Graphs - Euler cycles and paths

Lecture 10 - Graphs - Spanning trees, Minimum spanning trees

Lecture 11 - Graphs - Shortest path

To be discussed

  • Hashing
    • Hash function
    • Hash table
    • Bloom filter
  • String algorithms
    • Trie
    • Rolling hash
    • Run-length encoding
    • Burrows-Wheeler transform
    • Knuth-Morris-Pratt
  • Randomized algorithms - Monte Carlo and Las Vegas
  • Dynamic programming