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 1-3,
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, Red-Black Trees
(slides by M. Böhlen and R. Sebastiani,
lecture notes on
Binary Search Trees and
Red-black 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