SlideShare ist ein Scribd-Unternehmen logo
1 von 73
Boyer-Moore-Algorithmus Ein Textsuchalgorithmus für  große Alphabete Martin Szugat (Martin.Szugat@GMX.net)
Agenda ,[object Object],[object Object],[object Object],[object Object]
Problemstellung ,[object Object],[object Object],[object Object]
Zur Erinnerung!!! ,[object Object],[object Object],[object Object],[object Object]
Lösung I: Naive Suche ,[object Object],[object Object],[object Object],[object Object],[object Object]
Naive Suche - Beispiel ,[object Object],[object Object],Anzahl der Vergleiche: 0
Naive Suche - Beispiel ,[object Object],[object Object],Anzahl der Vergleiche: 1
Naive Suche - Beispiel ,[object Object],[object Object],Anzahl der Vergleiche: 2
Naive Suche - Beispiel ,[object Object],[object Object],Anzahl der Vergleiche: 5
Naive Suche - Beispiel ,[object Object],[object Object],Anzahl der Vergleiche: 5
Naive Suche - Beispiel ,[object Object],[object Object],Anzahl der Vergleiche: 9
Naive Suche - Beispiel ,[object Object],[object Object],Anzahl der Vergleiche: 12
Naive Suche - Beispiel ,[object Object],[object Object],Anzahl der Vergleiche: 20
Naive Suche - Laufzeit ,[object Object],[object Object],[object Object],[object Object],[object Object]
Lösung II: Knuth-Morris-Pratt ,[object Object],[object Object],[object Object],[object Object],[object Object]
Länge der Ränder aller Präfixe ,[object Object],[object Object],Leeres Wort
Länge der Ränder aller Präfixe ,[object Object],[object Object],Per Definition Leeres Wort
Länge der eigentlichen Ränder aller Präfixe ,[object Object],[object Object]
Länge der Ränder aller Präfixe ,[object Object],[object Object]
Länge der Ränder aller Präfixe ,[object Object],[object Object]
Länge der Ränder aller Präfixe ,[object Object],[object Object]
Knuth-Morris-Pratt - Beispiel ,[object Object],[object Object]
Knuth-Morris-Pratt - Beispiel ,[object Object],[object Object],[object Object],[object Object],[object Object],Anzahl der Vergleiche: 5
Knuth-Morris-Pratt - Beispiel ,[object Object],[object Object],Anzahl der Vergleiche: 5
Knuth-Morris-Pratt - Beispiel ,[object Object],[object Object],Anzahl der Vergleiche: 6
Knuth-Morris-Pratt - Beispiel ,[object Object],[object Object],Anzahl der Vergleiche: 8
Knuth-Morris-Pratt - Laufzeit ,[object Object],[object Object],[object Object],[object Object],[object Object],[object Object]
Knuth-Morris-Pratt - Worst-Case ,[object Object],[object Object],[object Object],[object Object],[object Object],Anzahl der Vergleiche: 3
Knuth-Morris-Pratt - Worst-Case ,[object Object],[object Object],[object Object],[object Object],[object Object],Anzahl der Vergleiche: 5
Knuth-Morris-Pratt - Worst-Case ,[object Object],[object Object],[object Object],[object Object],[object Object],Anzahl der Vergleiche: 6
Knuth-Morris-Pratt - Worst-Case ,[object Object],[object Object],[object Object],[object Object],[object Object],Anzahl der Vergleiche: 9
Knuth-Morris-Pratt - Worst-Case ,[object Object],[object Object],Anzahl der Vergleiche: 14
Bad Character ,[object Object],[object Object],[object Object],[object Object],[object Object]
Bad Character – Beispiel I ,[object Object],[object Object],Anzahl der Vergleiche: 3
Bad Character - Beispiel I ,[object Object],[object Object],Anzahl der Vergleiche: 6
Bad Character - Beispiel I ,[object Object],[object Object],Anzahl der Vergleiche: 9
Muster von rechts nach links vergleichen ,[object Object],[object Object],[object Object]
Bad Character - Beispiel II ,[object Object],[object Object],Anzahl der Vergleiche: 1
Bad Character - Beispiel II ,[object Object],[object Object],Anzahl der Vergleiche: 2
Bad Character - Beispiel II ,[object Object],[object Object],Anzahl der Vergleiche: 5
Bad Character-Regel ,[object Object],[object Object],[object Object],[object Object],[object Object],[object Object],[object Object]
Bad Character-Regel - Laufzeit ,[object Object],[object Object],[object Object],[object Object]
Sprungtabelle ,[object Object],[object Object],[object Object],[object Object],[object Object]
Good Suffix - Beispiel ,[object Object],[object Object],[object Object],[object Object],Anzahl der Vergleiche: 0
Good Suffix - Beispiel ,[object Object],[object Object],[object Object],[object Object],Anzahl der Vergleiche: 2
Good Suffix - Beispiel ,[object Object],[object Object],[object Object],[object Object],Anzahl der Vergleiche: 7 Shift um 2
Good Suffix - Beispiel ,[object Object],[object Object],Anzahl der Vergleiche: 7 Weak Good Suffix!
Good Suffix - Beispiel ,[object Object],[object Object],Anzahl der Vergleiche: 15 Mismatch an derselben Stelle im Text mit dem gleichen Zeichen im Muster! Shift um 3
Strong Good Suffix-Regel ,[object Object],[object Object],[object Object]
Strong Good Suffix - Beispiel ,[object Object],[object Object],[object Object],[object Object],Anzahl der Vergleiche: 2
Strong Good Suffix - Beispiel ,[object Object],[object Object],[object Object],[object Object],Anzahl der Vergleiche: 7 Shift um 2
Strong Good Suffix - Beispiel ,[object Object],[object Object],Anzahl der Vergleiche: 7 Weak Good Suffix
Strong Good Suffix - Beispiel ,[object Object],[object Object],Anzahl der Vergleiche: 7 Strong Good Suffix!
Strong Good Suffix - Beispiel ,[object Object],[object Object],Anzahl der Vergleiche: 18 Shift um 6 Bereits überprüfter Bereich wird erneut verglichen.
Kein Strong Good Suffix?! ,[object Object],[object Object],Anzahl der Vergleiche: 7 Weak Good Suffix
Regel für die Ränder ,[object Object],[object Object],[object Object]
Randregel  - Beispiel ,[object Object],[object Object],Anzahl der Vergleiche: 7 In einer 2. Sprungtabelle werden die eigentlichen Ränder des Musters berücksichtigt.
Randregel - Beispiel ,[object Object],[object Object],[object Object],Anzahl der Vergleiche: 9 Vorheriger Mismatch
Boyer-Moore: Top-Down ,[object Object],[object Object],[object Object],[object Object]
Algorithmus für die  Bad Character-Regel ,[object Object],[object Object],[object Object],[object Object]
Algorithmus für die Sprungtabelle ,[object Object],[object Object],[object Object]
Berechnung der Zwischentabelle ,[object Object],[object Object],[object Object],N(i):= max{j: j  ≥ 0  Λ  P[(i – j + 1)..i] ist Suffix von P}
Berechnung der Zwischentabelle ,[object Object],[object Object],[object Object],N( 6 ):= max{j: j  ≥ 0  Λ  P[( 6  – j + 1).. 6 ]  ist Suffix von P} =  2
Algorithmus für die Berechnung der Zwischentabelle (1) ,[object Object],d c b a b a c  b a i,e b a a N(i) = i – a Muster  P
Algorithmus für die Berechnung der Zwischentabelle (2) ,[object Object],[object Object],[object Object],d c b a b a c b a b a i c  b a  b a N(i) = N(|P| + i – e - 1) N(3) = N(8) = 2 e a c  b a b a
Algorithmus für die Berechnung der Zwischentabelle (3) ,[object Object],a  b a  b a c b  a b a i b a  b a N(i) >= N(|P| + i – e - 1) N(2) = N(7) + 1 = 2 + 1 = 3 e a b a  b a
Berechnung der Sprungtabelle 1. ,[object Object],[object Object],Text Muster  P Muster  P Fehler bei  i + j i s |P| - j - 1 s
Berechnung der Sprungtabelle 2. ,[object Object],[object Object],Text Muster  P Muster  P Fehler bei  i + j i s |P| - s
Laufzeiten bei Boyer-Moore I ,[object Object],[object Object],[object Object],[object Object],[object Object],[object Object],[object Object]
Laufzeiten bei Boyer-Moore II ,[object Object],[object Object],[object Object],[object Object],[object Object],[object Object]
Fazit: Vorteile von Boyer-Moore ,[object Object],[object Object],[object Object],[object Object],[object Object],[object Object]
Vergleich zu Knuth-Morris-Pratt Um so größer das verwendete Alphabet ist und um so weniger Wiederholungen das Muster und der Text enthält, um so stärker nähert sich die tatsächliche Laufzeit der Laufzeit im Best-Case an. 3 (n + m) 2 (n + m) Worst-Case n / m 2 (n + m) Best-Case Boyer-Moore Knuth-Morris-Pratt Algo Case
Noch Fragen??? ,[object Object]

Weitere ähnliche Inhalte

Was ist angesagt?

Applications of data structures
Applications of data structuresApplications of data structures
Applications of data structuresWipro
 
Rabin Carp String Matching algorithm
Rabin Carp String Matching  algorithmRabin Carp String Matching  algorithm
Rabin Carp String Matching algorithmsabiya sabiya
 
String Matching Algorithms-The Naive Algorithm
String Matching Algorithms-The Naive AlgorithmString Matching Algorithms-The Naive Algorithm
String Matching Algorithms-The Naive AlgorithmAdeel Rasheed
 
String matching algorithms-pattern matching.
String matching algorithms-pattern matching.String matching algorithms-pattern matching.
String matching algorithms-pattern matching.Swapan Shakhari
 
Data structure - Graph
Data structure - GraphData structure - Graph
Data structure - GraphMadhu Bala
 
Boyre Moore Algorithm | Computer Science
Boyre Moore Algorithm | Computer ScienceBoyre Moore Algorithm | Computer Science
Boyre Moore Algorithm | Computer ScienceTransweb Global Inc
 
Deterministic Finite Automata
Deterministic Finite AutomataDeterministic Finite Automata
Deterministic Finite AutomataShiraz316
 
Introduction to the Theory of Computation, Winter 2003 A. Hevia and J. Mao S...
 Introduction to the Theory of Computation, Winter 2003 A. Hevia and J. Mao S... Introduction to the Theory of Computation, Winter 2003 A. Hevia and J. Mao S...
Introduction to the Theory of Computation, Winter 2003 A. Hevia and J. Mao S...parmeet834
 
Boyer moore algorithm
Boyer moore algorithmBoyer moore algorithm
Boyer moore algorithmAYESHA JAVED
 
Queue - Data Structure - Notes
Queue - Data Structure - NotesQueue - Data Structure - Notes
Queue - Data Structure - NotesOmprakash Chauhan
 
Knuth morris pratt string matching algo
Knuth morris pratt string matching algoKnuth morris pratt string matching algo
Knuth morris pratt string matching algosabiya sabiya
 

Was ist angesagt? (20)

Applications of data structures
Applications of data structuresApplications of data structures
Applications of data structures
 
Rabin Carp String Matching algorithm
Rabin Carp String Matching  algorithmRabin Carp String Matching  algorithm
Rabin Carp String Matching algorithm
 
String Matching Algorithms-The Naive Algorithm
String Matching Algorithms-The Naive AlgorithmString Matching Algorithms-The Naive Algorithm
String Matching Algorithms-The Naive Algorithm
 
String matching algorithms-pattern matching.
String matching algorithms-pattern matching.String matching algorithms-pattern matching.
String matching algorithms-pattern matching.
 
String matching algorithms
String matching algorithmsString matching algorithms
String matching algorithms
 
Naive string matching
Naive string matchingNaive string matching
Naive string matching
 
Best,worst,average case .17581556 045
Best,worst,average case .17581556 045Best,worst,average case .17581556 045
Best,worst,average case .17581556 045
 
Single linked list
Single linked listSingle linked list
Single linked list
 
Graph traversals in Data Structures
Graph traversals in Data StructuresGraph traversals in Data Structures
Graph traversals in Data Structures
 
Data structure - Graph
Data structure - GraphData structure - Graph
Data structure - Graph
 
Boyre Moore Algorithm | Computer Science
Boyre Moore Algorithm | Computer ScienceBoyre Moore Algorithm | Computer Science
Boyre Moore Algorithm | Computer Science
 
String matching, naive,
String matching, naive,String matching, naive,
String matching, naive,
 
Deterministic Finite Automata
Deterministic Finite AutomataDeterministic Finite Automata
Deterministic Finite Automata
 
Introduction to the Theory of Computation, Winter 2003 A. Hevia and J. Mao S...
 Introduction to the Theory of Computation, Winter 2003 A. Hevia and J. Mao S... Introduction to the Theory of Computation, Winter 2003 A. Hevia and J. Mao S...
Introduction to the Theory of Computation, Winter 2003 A. Hevia and J. Mao S...
 
File structures
File structuresFile structures
File structures
 
Backtracking
BacktrackingBacktracking
Backtracking
 
Boyer moore algorithm
Boyer moore algorithmBoyer moore algorithm
Boyer moore algorithm
 
Queue - Data Structure - Notes
Queue - Data Structure - NotesQueue - Data Structure - Notes
Queue - Data Structure - Notes
 
Knuth morris pratt string matching algo
Knuth morris pratt string matching algoKnuth morris pratt string matching algo
Knuth morris pratt string matching algo
 
Network flows
Network flowsNetwork flows
Network flows
 

Mehr von Martin Szugat

Self-Service.AI - Pitch Competition for AI-Driven SaaS Startups
Self-Service.AI - Pitch Competition for AI-Driven SaaS StartupsSelf-Service.AI - Pitch Competition for AI-Driven SaaS Startups
Self-Service.AI - Pitch Competition for AI-Driven SaaS StartupsMartin Szugat
 
MENSCHEN STATT SEITEN - Ein Plädoyer für People Analytics
MENSCHEN STATT SEITEN - Ein Plädoyer für People AnalyticsMENSCHEN STATT SEITEN - Ein Plädoyer für People Analytics
MENSCHEN STATT SEITEN - Ein Plädoyer für People AnalyticsMartin Szugat
 
Pylba: App-as-a-Service für Mobile Content Marketing
Pylba: App-as-a-Service für Mobile Content MarketingPylba: App-as-a-Service für Mobile Content Marketing
Pylba: App-as-a-Service für Mobile Content MarketingMartin Szugat
 
Datentreiber - Wir treiben Ihr Unternehmen voran.
Datentreiber - Wir treiben Ihr Unternehmen voran.Datentreiber - Wir treiben Ihr Unternehmen voran.
Datentreiber - Wir treiben Ihr Unternehmen voran.Martin Szugat
 
Facebook Newsfeed Optimierung: Gefällt mir
Facebook Newsfeed Optimierung: Gefällt mirFacebook Newsfeed Optimierung: Gefällt mir
Facebook Newsfeed Optimierung: Gefällt mirMartin Szugat
 
German CRM Forum 2014: Social Data für Customer Intelligence
German CRM Forum 2014: Social Data für Customer IntelligenceGerman CRM Forum 2014: Social Data für Customer Intelligence
German CRM Forum 2014: Social Data für Customer IntelligenceMartin Szugat
 
LMU - Tag der offenen Türe 2014 - Big Data = Big Business?
LMU - Tag der offenen Türe 2014 - Big Data = Big Business?LMU - Tag der offenen Türe 2014 - Big Data = Big Business?
LMU - Tag der offenen Türe 2014 - Big Data = Big Business?Martin Szugat
 
Facebook ist tot. Eine Obduktion in sieben Akten.
Facebook ist tot.  Eine Obduktion in sieben Akten.Facebook ist tot.  Eine Obduktion in sieben Akten.
Facebook ist tot. Eine Obduktion in sieben Akten.Martin Szugat
 
Daumen hoch: Conversion Optimierung für Social Commerce
Daumen hoch: Conversion Optimierung für Social CommerceDaumen hoch: Conversion Optimierung für Social Commerce
Daumen hoch: Conversion Optimierung für Social CommerceMartin Szugat
 
Young Brand Awards 2013 - Auf Facebook sind meine Eltern.
Young Brand Awards 2013 - Auf Facebook sind meine Eltern.Young Brand Awards 2013 - Auf Facebook sind meine Eltern.
Young Brand Awards 2013 - Auf Facebook sind meine Eltern.Martin Szugat
 
Social CRM als Grundlage für persönliche Kundenkommunikation und personalisie...
Social CRM als Grundlage für persönliche Kundenkommunikation und personalisie...Social CRM als Grundlage für persönliche Kundenkommunikation und personalisie...
Social CRM als Grundlage für persönliche Kundenkommunikation und personalisie...Martin Szugat
 
What will Facebook do?
What will Facebook do?What will Facebook do?
What will Facebook do?Martin Szugat
 
Social Media und Mobile Anwendungen sinnvoll verknüpfen
Social Media und Mobile Anwendungen sinnvoll verknüpfenSocial Media und Mobile Anwendungen sinnvoll verknüpfen
Social Media und Mobile Anwendungen sinnvoll verknüpfenMartin Szugat
 
Referenten martin szugat_snip_clip 2013
Referenten martin szugat_snip_clip 2013Referenten martin szugat_snip_clip 2013
Referenten martin szugat_snip_clip 2013Martin Szugat
 
SnipClip @ LMU - Tag der offenen Türe 2013
SnipClip @ LMU - Tag der offenen Türe 2013SnipClip @ LMU - Tag der offenen Türe 2013
SnipClip @ LMU - Tag der offenen Türe 2013Martin Szugat
 
Die Mobile-Plattform der Zukunft: Facebook
Die Mobile-Plattform der Zukunft: Facebook Die Mobile-Plattform der Zukunft: Facebook
Die Mobile-Plattform der Zukunft: Facebook Martin Szugat
 
Referentenprofil Martin Szugat
Referentenprofil Martin SzugatReferentenprofil Martin Szugat
Referentenprofil Martin SzugatMartin Szugat
 
Facebook Marketing: Grundlagen und Erfolgsfaktoren
Facebook Marketing: Grundlagen und Erfolgsfaktoren Facebook Marketing: Grundlagen und Erfolgsfaktoren
Facebook Marketing: Grundlagen und Erfolgsfaktoren Martin Szugat
 
So funktioniert erfolgreiches Facebook-Marketing
So funktioniert erfolgreiches Facebook-Marketing So funktioniert erfolgreiches Facebook-Marketing
So funktioniert erfolgreiches Facebook-Marketing Martin Szugat
 
Ein bisschen Spaß muss sein: Game Mechanics im Social Media Marketing
Ein bisschen Spaß muss sein: Game Mechanics im Social Media MarketingEin bisschen Spaß muss sein: Game Mechanics im Social Media Marketing
Ein bisschen Spaß muss sein: Game Mechanics im Social Media MarketingMartin Szugat
 

Mehr von Martin Szugat (20)

Self-Service.AI - Pitch Competition for AI-Driven SaaS Startups
Self-Service.AI - Pitch Competition for AI-Driven SaaS StartupsSelf-Service.AI - Pitch Competition for AI-Driven SaaS Startups
Self-Service.AI - Pitch Competition for AI-Driven SaaS Startups
 
MENSCHEN STATT SEITEN - Ein Plädoyer für People Analytics
MENSCHEN STATT SEITEN - Ein Plädoyer für People AnalyticsMENSCHEN STATT SEITEN - Ein Plädoyer für People Analytics
MENSCHEN STATT SEITEN - Ein Plädoyer für People Analytics
 
Pylba: App-as-a-Service für Mobile Content Marketing
Pylba: App-as-a-Service für Mobile Content MarketingPylba: App-as-a-Service für Mobile Content Marketing
Pylba: App-as-a-Service für Mobile Content Marketing
 
Datentreiber - Wir treiben Ihr Unternehmen voran.
Datentreiber - Wir treiben Ihr Unternehmen voran.Datentreiber - Wir treiben Ihr Unternehmen voran.
Datentreiber - Wir treiben Ihr Unternehmen voran.
 
Facebook Newsfeed Optimierung: Gefällt mir
Facebook Newsfeed Optimierung: Gefällt mirFacebook Newsfeed Optimierung: Gefällt mir
Facebook Newsfeed Optimierung: Gefällt mir
 
German CRM Forum 2014: Social Data für Customer Intelligence
German CRM Forum 2014: Social Data für Customer IntelligenceGerman CRM Forum 2014: Social Data für Customer Intelligence
German CRM Forum 2014: Social Data für Customer Intelligence
 
LMU - Tag der offenen Türe 2014 - Big Data = Big Business?
LMU - Tag der offenen Türe 2014 - Big Data = Big Business?LMU - Tag der offenen Türe 2014 - Big Data = Big Business?
LMU - Tag der offenen Türe 2014 - Big Data = Big Business?
 
Facebook ist tot. Eine Obduktion in sieben Akten.
Facebook ist tot.  Eine Obduktion in sieben Akten.Facebook ist tot.  Eine Obduktion in sieben Akten.
Facebook ist tot. Eine Obduktion in sieben Akten.
 
Daumen hoch: Conversion Optimierung für Social Commerce
Daumen hoch: Conversion Optimierung für Social CommerceDaumen hoch: Conversion Optimierung für Social Commerce
Daumen hoch: Conversion Optimierung für Social Commerce
 
Young Brand Awards 2013 - Auf Facebook sind meine Eltern.
Young Brand Awards 2013 - Auf Facebook sind meine Eltern.Young Brand Awards 2013 - Auf Facebook sind meine Eltern.
Young Brand Awards 2013 - Auf Facebook sind meine Eltern.
 
Social CRM als Grundlage für persönliche Kundenkommunikation und personalisie...
Social CRM als Grundlage für persönliche Kundenkommunikation und personalisie...Social CRM als Grundlage für persönliche Kundenkommunikation und personalisie...
Social CRM als Grundlage für persönliche Kundenkommunikation und personalisie...
 
What will Facebook do?
What will Facebook do?What will Facebook do?
What will Facebook do?
 
Social Media und Mobile Anwendungen sinnvoll verknüpfen
Social Media und Mobile Anwendungen sinnvoll verknüpfenSocial Media und Mobile Anwendungen sinnvoll verknüpfen
Social Media und Mobile Anwendungen sinnvoll verknüpfen
 
Referenten martin szugat_snip_clip 2013
Referenten martin szugat_snip_clip 2013Referenten martin szugat_snip_clip 2013
Referenten martin szugat_snip_clip 2013
 
SnipClip @ LMU - Tag der offenen Türe 2013
SnipClip @ LMU - Tag der offenen Türe 2013SnipClip @ LMU - Tag der offenen Türe 2013
SnipClip @ LMU - Tag der offenen Türe 2013
 
Die Mobile-Plattform der Zukunft: Facebook
Die Mobile-Plattform der Zukunft: Facebook Die Mobile-Plattform der Zukunft: Facebook
Die Mobile-Plattform der Zukunft: Facebook
 
Referentenprofil Martin Szugat
Referentenprofil Martin SzugatReferentenprofil Martin Szugat
Referentenprofil Martin Szugat
 
Facebook Marketing: Grundlagen und Erfolgsfaktoren
Facebook Marketing: Grundlagen und Erfolgsfaktoren Facebook Marketing: Grundlagen und Erfolgsfaktoren
Facebook Marketing: Grundlagen und Erfolgsfaktoren
 
So funktioniert erfolgreiches Facebook-Marketing
So funktioniert erfolgreiches Facebook-Marketing So funktioniert erfolgreiches Facebook-Marketing
So funktioniert erfolgreiches Facebook-Marketing
 
Ein bisschen Spaß muss sein: Game Mechanics im Social Media Marketing
Ein bisschen Spaß muss sein: Game Mechanics im Social Media MarketingEin bisschen Spaß muss sein: Game Mechanics im Social Media Marketing
Ein bisschen Spaß muss sein: Game Mechanics im Social Media Marketing
 

Boyer-Moore-Algorithmus

  • 1. Boyer-Moore-Algorithmus Ein Textsuchalgorithmus für große Alphabete Martin Szugat (Martin.Szugat@GMX.net)
  • 2.
  • 3.
  • 4.
  • 5.
  • 6.
  • 7.
  • 8.
  • 9.
  • 10.
  • 11.
  • 12.
  • 13.
  • 14.
  • 15.
  • 16.
  • 17.
  • 18.
  • 19.
  • 20.
  • 21.
  • 22.
  • 23.
  • 24.
  • 25.
  • 26.
  • 27.
  • 28.
  • 29.
  • 30.
  • 31.
  • 32.
  • 33.
  • 34.
  • 35.
  • 36.
  • 37.
  • 38.
  • 39.
  • 40.
  • 41.
  • 42.
  • 43.
  • 44.
  • 45.
  • 46.
  • 47.
  • 48.
  • 49.
  • 50.
  • 51.
  • 52.
  • 53.
  • 54.
  • 55.
  • 56.
  • 57.
  • 58.
  • 59.
  • 60.
  • 61.
  • 62.
  • 63.
  • 64.
  • 65.
  • 66.
  • 67.
  • 68.
  • 69.
  • 70.
  • 71.
  • 72. Vergleich zu Knuth-Morris-Pratt Um so größer das verwendete Alphabet ist und um so weniger Wiederholungen das Muster und der Text enthält, um so stärker nähert sich die tatsächliche Laufzeit der Laufzeit im Best-Case an. 3 (n + m) 2 (n + m) Worst-Case n / m 2 (n + m) Best-Case Boyer-Moore Knuth-Morris-Pratt Algo Case
  • 73.