Overview
Hirschberg's algorithm uses forward and backward dynamic-programming rows to find a split point, then recursively reconstructs an optimal alignment with linear space.
Computes sequence alignment using divide and conquer to reduce memory.
Compact metadata for implementation and discovery.
Hirschberg's algorithm uses forward and backward dynamic-programming rows to find a split point, then recursively reconstructs an optimal alignment with linear space.
Quick facts
Runtime and memory behavior at a glance.
Best
O(n)
Average
O(n + m)
Worst
O(n + m)
Space
O(n + m)
Show dividing the dynamic-programming table to recover an alignment in linear space on a small sequence alignment example.
Hirschberg reduces memory for global alignment reconstruction, but it still performs dynamic-programming work.
What each reference supports for this entry.
Original reference for linear-space divide-and-conquer sequence alignment.
Open sourceSequence-analysis reference covering Hirschberg Algorithm dynamic-programming alignment recurrence, scoring model, and traceback behavior.
Good next jumps from the relationship graph, ranked for useful discovery.
Pattern Matching · Extended
Both address sequence alignment, but they make different modeling or performance tradeoffs.
Compare with thisBoth address sequence alignment, but they make different modeling or performance tradeoffs.
Both address sequence alignment, but they make different modeling or performance tradeoffs.
Both use dynamic programming ideas for related sequence alignment problems.