汉明距离

实践练习C++17

简介

人体由含有 DNA 的细胞组成。细胞会损耗,需要通过分裂产生子细胞来替换。普通人的一生约经历一千万亿次细胞分裂。

细胞分裂时,DNA 也会复制。有时复制会出错,使局部信息发生变化。比较两条 DNA 链并统计对应位置的差异,就可以知道有多少处不同,这称为汉明距离。

汉明距离不仅用于生物学,也广泛用于其他科学领域,值得了解。

任务说明

计算两条 DNA 链的汉明距离。

DNA 使用 C、A、G、T 四种字母表示。例如:

GAGCCTACTAACGGGAT CATCGTAATGACGGCCT ^ ^ ^ ^ ^ ^^

共有 7 处不同,因此汉明距离为 7。

实现说明

汉明距离只对等长序列定义,因此不同长度的序列不应正常返回距离,而应报告错误。