In-place - LinkFang.de





In-place


Ein Algorithmus arbeitet in-place bzw. in situ, wenn er außer dem für die Speicherung der zu bearbeitenden Daten benötigten Speicher nur eine konstante, also von der zu bearbeitenden Datenmenge unabhängige Menge von Speicher benötigt. Der Algorithmus überschreibt die Eingabedaten mit den Ausgabedaten.

So arbeitet etwa der Bubblesort-Algorithmus in-place, während Bucketsort out-of-place arbeitet, weil die Ausgabedaten in einer zweiten Liste gespeichert werden müssen, wodurch allerdings die ursprünglichen Daten unberührt bleiben. Die Platzkomplexität von in-place arbeitenden Algorithmen ist, in der Landau-Notation ausgedrückt, O(1).

In puren funktionalen Programmiersprachen können Zuweisungen nicht direkt durchgeführt werden und es ist dort daher nicht ohne weiteres möglich, In-Place-Algorithmen zu beschreiben. Durch Optimierungen des Compilers werden jedoch in einigen funktionalen Programmiersprachen Out-of-Place-Algorithmen automatisch in äquivalente In-Place-Algorithmen übersetzt. Beispielsweise erkennt der Glasgow Haskell Compiler, dass nach der Erzeugung einer modifizierten Kopie einer Variable das Original nicht mehr verwendet wird. In diesem Fall wird die Kopie intern als Zuweisung realisiert und somit kein zusätzlicher Speicher verbraucht.


Kategorien: Algorithmus

Quelle: Wikipedia - http://de.wikipedia.org/wiki/In-place (Vollständige Liste der Autoren des Textes [Versionsgeschichte])    Lizenz: CC-by-sa-3.0

Änderungen: Alle Bilder mit den meisten Bildunterschriften wurden entfernt. Ebenso alle zu nicht-existierenden Artikeln/Kategorien gehenden internen Wikipedia-Links (Bsp. Portal-Links, Redlinks, Bearbeiten-Links). Entfernung von Navigationsframes, Geo & Normdaten, Mediadateien, gesprochene Versionen, z.T. ID&Class-Namen, Style von Div-Containern, Metadaten, Vorlagen, wie lesenwerte Artikel. Ansonsten sind keine Inhaltsänderungen vorgenommen worden. Weiterhin kann es durch die maschinelle Bearbeitung des Inhalts zu Fehlern gerade in der Darstellung kommen. Darum würden wir jeden Besucher unserer Seite darum bitten uns diese Fehler über den Support mittels einer Nachricht mit Link zu melden. Vielen Dank!

Stand der Informationen: August 201& - Wichtiger Hinweis: Da die Inhalte maschinell von Wikipedia übernommen wurden, ist eine manuelle Überprüfung nicht möglich. Somit garantiert LinkFang.de nicht die Richtigkeit und Aktualität der übernommenen Inhalte. Sollten die Informationen mittlerweile fehlerhaft sein, bitten wir Sie darum uns per Support oder E-Mail zu kontaktieren. Wir werden uns dann innerhalb von spätestens 10 Tagen um Ihr Anliegen kümmern. Auch ohne Anliegen erfolgt mindestens alle drei Monate ein Update der gesamten Inhalte.