InPlaceAlgorithmen
InPlaceAlgorithmen bezeichnen Algorithmen, die die Eingabedaten größtenteils ohne zusätzlichen Speicher außerhalb der Eingabe verarbeiten. Typischerweise wird nur konstanter Zusatzspeicher verwendet, also O(1) neben dem Eingang. In manchen Beschreibungen wird zusätzlich der rekursive Stapel berücksichtigt, sodass dort O(log n) Zusatzspeicher zulässig ist. Strengere Definitionen verlangen jedoch wirklich konstanten zusätzlichen Platz unabhängig von der Eingangsgröße.
Charakteristisch ist, dass das Ergebnis direkt im ursprünglichen Datenbereich entsteht, ohne umfangreiche Kopien oder externe Datenstrukturen.
Typische Beispiele umfassen Sortieralgorithmen wie Quicksort mit in-place-Partitionierung, Heapsort, Selectionsort und Insertionsort. Auch Transformations- und Manipulationsaufgaben
Der Begriff ist in der Informatik verbreitet, wobei die genaue Definition hinsichtlich des zusätzlichen Speichers je