Boyer-Moore String Matching – Good-suffix-Verschiebung

Verstehe ich die schlechten-symbol-Tabelle. In der good-suffix Tabelle, sollte nicht die Entfernung berechnet als die Entfernung vom am weitesten rechts liegenden vorkommen von Muster, um das Ende des pattern text ? In diesem Fall sollte keine der folgenden Tabelle werden alle Abstände (d2) von 1 (außer für den letzten Eintrag, 5), denn die gleichen Muster zur Verfügung stehen würde, der gleich Links davon?

Boyer-Moore String Matching - Good-suffix-Verschiebung

Auf ähnliche Begriffe, nie verstanden, die unterhalb der Tabelle. Keine Hilfe?

Boyer-Moore String Matching - Good-suffix-Verschiebung

Referenz:

Frage – Seite 6, Frage 7.


Antwort – Seite 11


Dem design und der Analyse von computer-algorithmen – Anany Levitin ( https://umutzafer.files.wordpress.com/2012/01/solu7.pdf )

Text – Das design und die Analyse von computer-algorithmen – Anany Levitin ( Seite 263 )

  • Bitte geben Sie eine Referenz in Ihrer Frage, die uns sagt, wo hast du den zitierten text und Tabellen aus.
  • Bearbeitet..suchen Sie bitte die Referenz.
  • Danke. Ich weiß nicht, die Antwort, aber der Verweis / link, kann helfen, jemand anderes zu helfen Sie.

 

2 Replies
  1. 1

    Den good-suffix Regel ist auf der Suche nach einer Instanz, die bereits-suffix , wo der Vorherige Charakter unterscheidet sich. Zum Beispiel, in dem Fall die „good suffix“ 00 in der ersten Tabelle, die shift-sucht eine Instanz von 00 nicht vorangestellt 0.

    Warum? Weil wir wissen, dass die 0 vor dem „good-suffix“ trifft nicht; sonst würden wir nicht versuchen, zu verschieben.

    In der zweiten Tabelle keine solche Instanz gefunden werden kann. Statt also, suchen wir uns eine plausible Präfix des Musters, das entspricht einem suffix von „gutes suffix“.

    • Bang on target. Nachdem er es viel früher gedacht, endlich das problem verstanden hatte, nach der Lektüre Ihre Antwort in einem Rutsch.Vielen Dank für die klare Erklärung.
  2. 0

    Manchmal sind die Dinge nicht genannt, die explizit in den Büchern, wie Sie möchten, es zu sein in dieser Art von algorithmen, die Sache ist die, schauen für ein vorkommen der übereinstimmenden Teil mit verschiedenen vorherigen char heißt auch die eine mit nicht vorher ein char überhaupt, dass der Fall im pattern-01010, wenn k=1 hier wird die dist zwischen 0 mit dem index 0, die nicht vorangestellt 1(in der Tat nicht von nichts) und 0, die aufeinander abgestimmt sind und vorangestellt 1 ist 4, also D2=4.

    wenn k=1 suffix 0 von aufeinander abgestimmten Teil findet sich als Präfix beginnend bei index 0 und der Abstand zwischen diesen ist 4, also D2=4, wenn k=3 unsere abgestimmten Teil vorangestellt ist, 1 allerdings sehen wir ein anderes 010 ab index 0 nicht vorangestellt ist alles, was zählt, und der Abstand zwischen diesen ist 2, also D2=2. schließlich, wenn k=4 suffix 010 von aufeinander abgestimmten Artikel finden Sie auf index 0, das in einer Entfernung von 2 aus unserem suffix 010 also wieder D2 ist 2.

Schreibe einen Kommentar

Deine E-Mail-Adresse wird nicht veröffentlicht. Erforderliche Felder sind mit * markiert.