你的身體由帶有 DNA 的細胞組成。 這些細胞會定期耗損,需要汰換,而它們是靠分裂成子細胞來完成這件事。 事實上,人的一生中,身體平均會經歷大約數千兆次的細胞分裂!
細胞分裂時,它們的 DNA 也會複製。 有時在這個過程中會出差錯,使單一片段的 DNA 被編碼成錯誤的資訊。 如果我們比較兩股 DNA 並計算它們之間的差異,就能看出發生了多少錯誤。 這就是所謂的「漢明距離」。
漢明距離不只在生物學,在許多科學領域都很有用,所以這個詞很值得認識一下 :)
計算兩股 DNA 之間的漢明距離。
DNA 是由 C、A、G、T 四個字母所組成。 兩股 DNA 可能長這樣:
GAGCCTACTAACGGGAT
CATCGTAATGACGGCCT
^ ^ ^ ^ ^ ^^
它們之間有 7 處不同,因此漢明距離是 7。
漢明距離只定義在長度相同的序列上,所以試圖計算長度不同的兩段序列之間的漢明距離時,應該要失敗。
| 暫存器 | 用途 | 型別 | 說明 |
|---|---|---|---|
$a0 |
輸入 | 位址 | 第一個字串,以 null 結尾 |
$a1 |
輸入 | 位址 | 第二個字串,以 null 結尾 |
$v0 |
輸出 | 整數 | 漢明距離 |
$t0-9 |
暫存 | 任意 | 用於暫存 |