Skip to content

Java implementation of common algorithms taught at ETH

Notifications You must be signed in to change notification settings

XYQuadrat/and-algorithms

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 

History

8 Commits
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 

Repository files navigation

and-algorithms

This repository contains implementations of most relevant algorithms that are covered in the course "Algorithmen und Datenstrukturen" at ETH Zurich (based on the content of the autumn semester 2020):

Sorting Algorithms

  • Heapsort
  • Mergesort
  • Quicksort

Graph Algorithms

  • DFS
  • BFS
  • Dijkstra
  • Bellman-Ford
  • Floyd-Warshall
  • Binary Search Tree
  • Max-Heap
  • Prim
  • Kruskal
  • Union Find (used for Kruskal)

DP Algorithms

  • Knapsack
    • One constraint, bounded
    • One constraint, unbounded
    • Two constraints, bounded
    • Two constraints, unbounded
  • Longest Common Subsequence
  • Longest Increasing Subsequence
  • Edit distance

Other Algorithms

  • Binary Search

The implementations are meant to work standalone and are optimised for readability, not conciseness. I give no guarantees that the implementations are correct, however I've tested nearly all of them at some point.

About

Java implementation of common algorithms taught at ETH

Topics

Resources

Stars

Watchers

Forks

Languages