Programmierung & Algorithmenkonstruktion


In diesem Bereich kommt alles rein, was die Programmierung unter Linux betrifft, vor allem -wo doch Linux zum Großteil in C geschrieben ist- in C/C++. So werden Algorithmen aufgezeigt, Effizienzsteigerungsprobleme betrachtet und verschiedene Programmiertechniken diskutiert.


Algorithmen & Algorithmenkonstruktion

Zeitoptimale Sortierverfahren
Ausführliche Erläuterung der wichtigsten zeitoptimalen Sortierverfahren (Quicksort/Mergesort/Heapsort/Radixsorts), unterlegt mit C-Implementationen und vielen Beispielen.
Definitionen zu Algorithmen
Eine theoretische Einführung bzw. Begriffsklärung der Algorithmik als Grundlagengebiet der Informatik
Gauß-Verfahren zur Summenberechnung
Hier werdem ein sequentielles sowie das Gauß-Verfahren zur Ermittlung der Summe einer Reihe vorgestellt und analysiert, wobei die Ablaufgeschwindigkeit gemessen wird. In mathematischer sowie C-Notation...
Der Euklidische Algorithmus
Das Kürzen eines Bruches ist ein sehr klassisches Problem, was dem Herausfinden des größten gemeinsamen Teilers (ggT) zweier Zahlen gleichkommt. Der klassische Euklidische Algorithmus bietet eine Lösung und soll hier verdeutlicht werden, wobei auch auf Verbesserungen und deren Analyse eingegangen wird.
Das Horner-Schema
Vielfache Aufgabe in der Mathematik ist die Berechnung der Summe eines reellen Polynoms. Anstatt mit der Brechstange vorzugehen, verdeutlicht dieser Text, wie man es auch effizienter lösen kann. Hierbei steht wieder der Aspekt der Algorithmenoptimierung im Vordergrund, welcher sich an diesem Beispiel recht einfach erklären lässt.
Quicksort-Verbesserungen
Mit diesem Text will ich zwei sinnvolle Verbesserungen des klassischen Quicksort-Algorithmus aufzeigen, welche das Sortierverfahren um mehr als 25% schneller machen können (seit 09/04 im Artikel Zeitoptimale Sortierverfahren enthalten)...
Die O-Notation
Die Analyse von Algorithmen ist ein wichtiges Teilgebiet der Informatik und so stellt auch die O-Notation ein wichtiges Werkzeug für Algorithmendesigner dar, lassen sich hiermit doch mathematische Beweise zu Aussagen über die Laufzeit eines Algorithmus' durchführen. Dieser Text soll ausführlich in die O-Notation einführen und wichtige Rechenregeln/Tipps/Beispiele und Gefahren aufzeigen.
Das Haus vom Nikolaus
Das alt-bekannte Kinderspiel algorithmisch verwirklicht...
Lösung des Rundreiseproblems mit Branch&Bound
[ Quelltext ]
In dieser Ausarbeitung geht es um die Lösung des Rundreiseproblems (TSP), eines NP-vollständigen Problems, mittels Branch&Bound. Dabei habe ich versucht, den Algorithmus zu veranschaulichen und zu verifizieren, was aber nur teilweise gelungen sein dürfte. Der Quelltext zeigt die Implementation in Java.
Kurzvortrag Softwarefehler/Fehlerfreiheit von Software Mein Kurzvortrag beim Auswahlseminar der Studienstiftung des deutschen Volkes handelte von der Fehlerfreiheit von Software. Den ausführlichen Artikel dazu gibt's hier. Im Speziellen wird kurz und knapp auf die Validation und die Verifikation von Software eingegangen.


Bildverarbeitung und Photogrammetrie

Meine Bachelorarbeit [PDF, 2.76MB]
Meine Bachelorarbeit beinhaltet grob gesagt die Schienenerkennung aus Videobildern, um maßstäbliche Lichtraumprofile einzeichnen zu können. Dabei werden sowohl Algorithmen der Photogrammetrie (DLT) als auch der Bildverarbeitung (Kantendetektion, Hough-Transformation etc.) benötigt und erklärt. Viel Spaß mit dem 101 Seiten schweren Dokument :)
Einführung in die Kamerakalibrierung
Das Messen von Entfernungen in Videobildern stellt einen entscheidenen Bestandteil für Robotersysteme dar. Diese Arbeit entstand im Rahmen des Leobots-Projekts (Leipziger Roboterprojekt des Eurobot-Wettbewerbs) und führt grundlegend in die Thematik der Kamerakalibrierung ein und gibt praktische Hinweise.


(c) 2007 by RTC, www.linux-related.de
Dieses Dokument unterliegt der GNU Free Documentation License