우리 몸은 DNA를 담고 있는 세포로 이루어져 있어요. 이 세포들은 주기적으로 닳아서 교체가 필요한데, 딸세포로 분열하면서 스스로를 교체해요. 실제로 평균적인 사람의 몸은 평생 동안 약 10,000조 번의 세포 분열을 겪어요!
세포가 분열할 때는 DNA도 함께 복제돼요. 때때로 이 과정에서 실수가 생겨 DNA 조각 하나하나에 잘못된 정보가 담기기도 해요. DNA 두 가닥을 비교해서 서로 다른 부분을 세어 보면 실수가 몇 번 일어났는지 알 수 있어요. 이것을 "해밍 거리"라고 해요.
해밍 거리는 생물학뿐만 아니라 과학의 여러 분야에서 유용하게 쓰여서, 알아 두면 좋은 용어예요 :)
두 DNA 가닥 사이의 해밍 거리를 계산해요.
DNA는 C, A, G, T 네 글자로 읽어요. 두 가닥은 다음과 같이 생겼을 수 있어요:
GAGCCTACTAACGGGAT
CATCGTAATGACGGCCT
^ ^ ^ ^ ^ ^^
두 가닥에는 7개의 차이가 있어요. 따라서 해밍 거리는 7이에요.
해밍 거리는 길이가 같은 서열에 대해서만 정의돼요. 따라서 길이가 다른 서열 사이에서는 계산할 수 없어요.
두 가닥의 길이가 서로 다르면, 다음 문자열을 (그대로) 던져요.
"strands must be of equal length"
Exercism에 가입하고 Factor 트랙을 개념 47개연습 문제 163개, 그리고 실제 사람의 멘토링과 함께 배우고 익혀 보세요. 모두 무료예요.