Optimal On-Disk-Datenstruktur für eine Datei gesucht?

stimmen
2

Ich habe ein paar Stunden lesen Beiträge ausgegeben, die im Rahmen eines Angebots auf die Frage bezogen wurden, um zu versuchen und mit einer Lösung zu kommen, aber ich war nicht wirklich erfolgreich mit einem kommen.

So, hier geht: Ich war einmal in einem Interview gefragt, die Datenstruktur ich wäre ein suchen, wenn ein bestimmtes Wort in einer Datei vorhanden ist. Die Datei ist auch angeblich groß genug, um nicht in der Lage sein, in dem Speicher zu passen, und der Interviewer war wirklich für eine On-Disk-Lösung suchen.

Ist der B-Baum eine On-Disk-Datenstruktur?

Ein binärer Suchbaum ist eine In-Memory-Datenstruktur ist es nicht?

Veröffentlicht am 22/02/2011 um 22:55
quelle vom benutzer
In anderen Sprachen...                            


3 antworten

stimmen
1

Beide sind nur Datenstrukturen und sowohl auf der Festplatte oder im Arbeitsspeicher sein können. Es hängt davon ab, wie Sie sie verwenden möchten.

btw, B-Bäume wurden durch die Notwendigkeit motiviert Strukturen auf der Festplatte zu haben. Binäre Suchbäume sind nur ein besonderer Fall von B-Bäumen, in einer Art und Weise.

Beantwortet am 22/02/2011 um 23:01
quelle vom benutzer

stimmen
2

Sie wollen eine Datenstruktur verwenden, die einen Knoten auf einer Seite von Speicherplatz zuordnet. Dadurch wird die Plattenaktivität minimieren.

Da ein B-Baum wird oft zum Einsatz. Siehe http://en.wikipedia.org/wiki/B-tree , insbesondere der Abschnitt „Time eine sortierte Datei suchen“.

Beantwortet am 22/02/2011 um 23:01
quelle vom benutzer

stimmen
4

Es gibt wirklich zwei verschiedene mögliche Fragen hier:

  1. Bei einer massiven Datei, und ein Wort, wie Sie überprüfen, ob das Wort in der Datei vorhanden ist?

  2. Bei einer massiven Datei, wie baut man einen Index, so dass Sie effizient, wenn ein beliebiges Wort in der Datei vorhanden überprüfen?

Das erste Problem ist mit Boyer-Moore und eine lineare Suche durch die Datei effizient gelöst. Wenn Sie sich nur einmal suchen, einen Index ist eine komplette Zeitverschwendung.

das zweite Problem betrifft, so klingt es wie der Interviewer wirklich B-Trees drängt.

Beantwortet am 22/02/2011 um 23:03
quelle vom benutzer

Cookies help us deliver our services. By using our services, you agree to our use of cookies. Learn more