Hirschberg
Hirschberg provides a generic implementation of Hirschberg's algorithm for finding the optimal global alignment of two sequences.
Example usage:
let a = "ACCCGGTCGTCAATTA".chars.;
let b = "ACCACCGGTTGGTCCAATAA".chars.;
let output = default.compute;
let : = output
.alignment
.iter
.map
.unzip;
assert_eq!;
assert_eq!;
The match, mismatch and gap contribution to the score may be configured:
let a = "ACCCGGTCGTCAATTA".chars.;
let b = "ACCACCGGTTGGTCCAATAA".chars.;
let output = default.mismatch_score.compute;
let : = output
.alignment
.iter
.map
.unzip;
assert_eq!;
assert_eq!;