λ¬Έμžμ—΄ μ•Œκ³ λ¦¬μ¦˜Advanced

보이어-무어 λ¬Έμžμ—΄ λ§€μΉ­

λ‚˜μœ λ¬Έμžμ™€ 쒋은 접미사 νœ΄λ¦¬μŠ€ν‹±μ„ μ‚¬μš©ν•˜λŠ” 효율적인 λ¬Έμžμ—΄ 검색 μ•Œκ³ λ¦¬μ¦˜μž…λ‹ˆλ‹€. νŒ¨ν„΄μ„ 였λ₯Έμͺ½μ—μ„œ μ™Όμͺ½μœΌλ‘œ λΉ„κ΅ν•˜μ—¬ 뢈일치 μ‹œ 큰 점프λ₯Ό ν—ˆμš©ν•©λ‹ˆλ‹€. μ‹€μ œλ‘œ μ€€μ„ ν˜• μ‹œκ°„μ„ λ‹¬μ„±ν•˜μ—¬ κ°€μž₯ λΉ λ₯Έ λ¬Έμžμ—΄ λ§€μΉ­ μ•Œκ³ λ¦¬μ¦˜ 쀑 ν•˜λ‚˜μž…λ‹ˆλ‹€.

#string#pattern-matching#heuristic#text-search

Complexity Analysis

Time (Average)

O(n)

Expected case performance

Space

O(m + Οƒ)

Memory requirements

Time (Best)

O(n/m)

Best case performance

Time (Worst)

O(n Γ— m)

Worst case performance

πŸ“š CLRS Reference

Introduction to Algorithmsβ€’Chapter 32β€’Section 32.5

Step: 1 / 0
500ms
SlowFast
Keyboard Shortcuts
Space Play/Pause← β†’ StepR Reset1-4 Speed

Real-time Statistics

Algorithm Performance Metrics

Progress0%
Comparisons
0
Swaps
0
Array Accesses
0
Steps
1/ 0

Algorithm Visualization

Step 1 of 0

Initialize array to begin

Default
Comparing
Swapped
Sorted

Code Execution

Currently executing
Previously executed

Implementation

Boyer-Moore String Matching - Algorithm Vision