汉明

汉明

简单

简介

你的身体由含有 DNA 的细胞组成。 这些细胞会定期损耗,需要更替,而它们靠分裂成子细胞来完成这件事。 事实上,普通人的身体一生中会经历大约 1 亿亿次细胞分裂!

细胞分裂时,它们的 DNA 也会复制。 有时在这个过程中会出差错,单个 DNA 片段会被编码成错误的信息。 如果我们比较两条 DNA 链并数出它们之间的差异,就能看出发生了多少错误。 这就是所谓的“汉明距离”。

汉明距离不只在生物学中有用,在许多科学领域都很有用,所以这是个值得熟悉的好说法 :)

说明

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

我们使用字母 C、A、G 和 T 来表示 DNA。 两条链可能看起来像这样:

GAGCCTACTAACGGGAT
CATCGTAATGACGGCCT
^ ^ ^  ^ ^    ^^

它们有 7 处不同,因此汉明距离是 7。

实现说明

汉明距离只对长度相同的序列有定义,所以在长度不同的序列之间计算它是行不通的。

提示

这是第一道要求你抛出Exception的练习。抛出Exception通常是为了表示程序遇到了意外的输入或状态。

整个 track 中的测试会验证你抛出的异常:

  1. 是指定 Java 类型的实例;
  2. (可选)初始化时带有指定的消息。
通过 GitHub 编辑 链接将在新窗口或新标签页中打开
Java Exercism

准备好开始 汉明 了吗?

注册 Exercism,借助 26 个概念158 个练习 和真人导师指导,学习并掌握 Java,全部免费。