Als «data-structures» getaggte Fragen

Fragen zur Speicherung von Daten, damit diese von Algorithmen vorteilhaft genutzt werden können.


1
Was ist der effizienteste Algorithmus und die effizienteste Datenstruktur zum Verwalten der Informationen zu verbundenen Komponenten in einem dynamischen Diagramm?
Angenommen, ich habe ein ungerichtetes Diagramm mit endlicher Dichte und muss in der Lage sein, die folgenden Abfragen effizient auszuführen: ichs C.o n n e c t e d( N.1, N.2)IsConnected(N1,N2)IsConnected(N_1, N_2) - gibt wenn zwischen und ein Pfad besteht , andernfallsN 1 N 2 F.T.TTN.1N1N_1N.2N2N_2F.FF C.o n n e …


3
Kompakte Darstellung von Pfaden in einem Diagramm
Ich habe eine Teilmenge der einfachen Pfade in einem Diagramm. Die Länge der Pfade wird durch .ddd Was ist die kompakteste Art (speichertechnisch), wie ich die Pfade so darstellen kann, dass außer den ausgewählten Pfaden keine anderen Pfade dargestellt werden? Beachten Sie, dass ich diese Darstellung in einem Algorithmus verwenden …

2
Auf der Suche nach einer festgelegten Implementierung mit geringem Speicherbedarf
Ich suche die Implementierung des eingestellten Datentyps. Das heißt, wir müssen Behalte eine dynamische Teilmenge SSS (der Größe nnn ) aus dem Universum U={0,1,2,3,…,u–1}U={0,1,2,3,…,u–1}U = \{0, 1, 2, 3, \dots , u – 1\} der Größe uuu mit bei Operationen insert(x)(ein Element xzu hinzufügen SSS) und find(x)(prüft, ob das Element …

1
Spreizbaum mit ungerader Anzahl von Umdrehungen
Beim Einfügen eines Elements in einen Spreizbaum werden Drehungen paarweise basierend auf einem Zick-Zack- oder Zick-Zick-Muster ausgeführt. Wenn eine ungerade Anzahl von Umdrehungen ausgeführt werden muss, kann man entweder die zusätzliche Umdrehung beginnend am Blatt ausführen oder die zusätzliche Umdrehung speichern und an der Wurzel ausführen. Ist das wichtig? Zum …



2
Aufteilung in AVL-Baum mit Komplexität
Kann die Aufteilungsoperation für AVL-Bäume mit der Komplexität implementiert werden O(logn)O(log⁡n)O(\log n)? Ich interessiere mich für Links zu Artikeln oder spezifische Informationen zu diesem Thema. Die Aufteilungsoperation unterteilt den AVL-Baum basierend auf dem Schlüssel in zwei abgeleitete AVL-Bäume. Einer der abgeleiteten Bäume sollte alle Eckpunkte enthalten, in denen alle Schlüssel …

1
Ist Hedge Union immer so schnell wie Teilen und Erobern?
Adams beschreibt einen Divide-and-Conquer-Algorithmus zum Finden der Vereinigung zweier Mengen (dargestellt als gewichtsausgeglichene binäre Suchbäume). Anschließend beschreibt er einen damals neuen "Hedge Union" -Algorithmus, von dem er behauptet, dass er den Divide-and-Conquer-Algorithmus verbessert. Er bietet jedoch keinen Beweis oder gar eine echte Erklärung dafür, warum es , geschweige denn, warum …

1
Datenstruktur für eine effiziente Suche, wenn Einfügungen und Entfernungen nur einseitig sind
Ich benötige eine Datenstruktur zum Speichern einer Anzahl nnn von Elementen, von denen jedes einer anderen Zeit tichticht_i . nnn variiert und obwohl es eine theoretische Obergrenze hat, ist diese um viele Größenordnungen größer als das, was typischerweise verwendet wird. Durch meine Bewerbung kann ich Folgendes sicherstellen: Eingefügten Elemente sind …



2
Wie vermeide ich kaskadierende Größenänderungen beim Ändern der Größe von Hash-Tabellen?
Bei herkömmlichen Kollisionsauflösungsmethoden wie separater Verkettung und linearer / quadratischer Abtastung kann die Sondensequenz für einen Schlüssel beliebig lang sein - sie wird einfach mit hoher Wahrscheinlichkeit kurz gehalten, indem der Lastfaktor der Tabelle niedrig gehalten wird. Kollisionen während des Aufwärmens sind daher kein Problem, da sie den Lastfaktor nicht …


Durch die Nutzung unserer Website bestätigen Sie, dass Sie unsere Cookie-Richtlinie und Datenschutzrichtlinie gelesen und verstanden haben.
Licensed under cc by-sa 3.0 with attribution required.