Data Structures and Algorithms 2012/13: Lectures
This page contains links to

the slides underlying the lectures, mainly by Michael Böhlen and Roberto Sebastiani

the handwritten notes that I use for my presentations at the blackboard

pointers to other relevant material.
The links are organized according to the topics of the lectures

Organisation, Algorithms, Recursion, Sorting
(Slides
Sections 13,
Section 4)
In the lecture, I showed an
iterative implementation
of the Fibonacci function.
These are Java implementations of
Insertion Sort,
Insertion Sort with an inner for loop, and
Selection Sort.

Complexity and Correctness of Algorithms
(Slides)

Divide and Conquer, Recurrences
(slides part 1,
slides part 2 by M. Böhlen,
lecture notes on
Divide and Conquer Principles and the
Master Theorem)

Heapsort, Quicksort
(slides by M. Böhlen,
lecture notes on Heapsort and
Quicksort)

Hoare's original article on
Quicksort
in the Computer Journal (accessible from within the UNIBZ network)

Dynamic Data Structures, Abstract Data Types
(slides by M. Böhlen and R. Sebastiani)

Binary Search Trees, RedBlack Trees
(slides by M. Böhlen and R. Sebastiani,
lecture notes on
Binary Search Trees and
Redblack Trees)

Hashing
(slides by M. Böhlen and R. Sebastiani,
lecture notes on
Hashing Principles and
Open Addressing)

Dynamic Programming
(slides by M. Böhlen,
lecture notes on
Longest Common Subsequence,
Edit Distance,
Matrix Multiplication Ordering)

Graphs: Principles and Graph Traversal
(slides by M. Böhlen and R.Sebastiani,
lecture notes on Graphs: Breadth First, Depth First, Topological Sorting)

Dijksta's Shortest Path Algorithm
(slides by M. Böhlen and R.Sebastiani,
lecture notes on
Shortest Paths)
Back to the course homepage