Datenstrukturen in Python – Linked Lists

Nach den Queues und den Stacks geht es im dritten Artikel zu Datenstrukturen um die Linked Lists. Bei dieser Datenstrukturen hat man es mit Knoten (nodes) zu tun, die miteinander verbunden sind. Zu jedem Knoten gehört ein Wert (value) und ein Zeiger (pointer). Folgende Abbildung zeigt eine Singly Linked List, bei der jeder Knoten nur über einen Zeiger verfügt, der …

Weiterlesen …

Binäre Suche in Python

Wie bei der linearen Suche, geht es auch bei der binären Suche darum einen Wert in einer Liste zu finden, die in diesem Beispiel wie folgt aussieht: Zunächst ist es erforderlich, die Werte in der Liste zu ordnen, wofür die Methode sort() verwendet wird: Die weitere Vorgehensweise sieht nun so aus, dass die Liste in der Hälfte geteilt wird. Hierfür …

Weiterlesen …

Lineare Suche in Python

Die lineare Suche ist der einfachste Suchalgorithmus. Sie ist auch unter der Bezeichnung sequentielle Suche bekannt. Hierbei wird über alle Elemente — vom Anfang bis zum Ende — einer Liste iteriert, bis das gesuchte Element gefunden wird. Als Ergebnis erhält man im nachfolgenden Beispiel den Index des gefundenen Werts. Wie man sich denken kann, hat diese Suche gemäß der Big-O-Notation …

Weiterlesen …

Big-O-Notation

Unabhängig davon, ob man sich das Programmieren im Selbststudium beibringt oder ob man im Informatikstudium damit konfrontiert wird, irgendwann trifft man auf die Big-O-Notation. Was ist die Big-O-Notation? Aber was versteht man unter der Big-O-Notation? Bei der Entwicklung bzw. der Auswahl eines Algorithmus kommt es auf die Frage an, wie schnell dieser ist. Hinsichtlich der Geschwindigkeit, wie auch der Größe …

Weiterlesen …