동적 ν”„λ‘œκ·Έλž˜λ°Advanced

회문 λΆ„ν•  (μ΅œμ†Œ μ»·)

2D 동적 ν”„λ‘œκ·Έλž˜λ°μ„ μ‚¬μš©ν•˜μ—¬ λ¬Έμžμ—΄μ„ 회문으둜 λΆ„ν• ν•˜λŠ” 데 ν•„μš”ν•œ μ΅œμ†Œ 컷을 μ°ΎμŠ΅λ‹ˆλ‹€. λ¨Όμ € O(nΒ²)둜 회문 ν…Œμ΄λΈ”μ„ κ΅¬μΆ•ν•œ λ‹€μŒ μ΅œμ†Œ 컷을 κ³„μ‚°ν•©λ‹ˆλ‹€. ν…μŠ€νŠΈ 처리, λ¬Έμžμ—΄ μ΅œμ ν™”, μ—¬λŸ¬ 단계가 μžˆλŠ” λ³΅μž‘ν•œ DP μ‹œμ—°μ˜ μ‘μš©μ΄ μžˆμŠ΅λ‹ˆλ‹€. λ¬Έμžμ—΄ μ‘°μž‘ λ¬Έμ œμ—μ„œ 졜적 λΆ€λΆ„ ꡬ쑰λ₯Ό λ³΄μ—¬μ€λ‹ˆλ‹€.

#dynamic-programming#strings#palindromes#optimization

Complexity Analysis

Time (Average)

O(nΒ²)

Expected case performance

Space

O(nΒ²)

Memory requirements

Time (Best)

O(nΒ²)

Best case performance

Time (Worst)

O(nΒ²)

Worst case performance

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

Palindrome Partitioning (Min Cuts) - Algorithm Vision