Hamming

Hamming

সহজ

নির্দেশনা

দুইটি DNA স্ট্র্যান্ডের মধ্যে Hamming distance হিসাব করুন।

আপনার শরীর কোষ দিয়ে গঠিত, আর সেই কোষগুলোর ভেতরে থাকে DNA। এই কোষগুলো নিয়মিত ক্ষয়ে পড়ে এবং প্রতিস্থাপনের প্রয়োজন হয়, যা তারা কন্যা কোষে বিভক্ত হওয়ার মাধ্যমে সম্পন্ন করে। আসলে, একজন সাধারণ মানুষের শরীর সারা জীবনে প্রায় ১০ কোয়াড্রিলিয়ন কোষ বিভাজনের মধ্য দিয়ে যায়!

কোষ বিভাজিত হলে তাদের DNA-ও প্রতিলিপি তৈরি করে। কখনো কখনো এই প্রক্রিয়ার মাঝে ভুল ঘটে এবং DNA-র পৃথক পৃথক অংশে ভুল তথ্য এনকোড হয়ে যায়। যদি আমরা DNA-র দুইটি স্ট্র্যান্ড তুলনা করি এবং তাদের মধ্যেকার পার্থক্যগুলো গুনে দেখি, তাহলে বোঝা যায় কতগুলো ভুল ঘটেছে। একেই বলা হয় "Hamming distance"।

আমরা DNA পড়ি C, A, G আর T অক্ষর ব্যবহার করে। দুইটি স্ট্র্যান্ড দেখতে এমন হতে পারে:

GAGCCTACTAACGGGAT
CATCGTAATGACGGCCT
^ ^ ^  ^ ^    ^^

এদের মধ্যে ৭টি পার্থক্য আছে, তাই Hamming distance হলো ৭।

Hamming distance শুধু জীববিজ্ঞানেই নয়, বিজ্ঞানের অনেক ক্ষেত্রেই কাজে লাগে, তাই এই শব্দটির সাথে পরিচিত থাকা ভালো :)

ইমপ্লিমেন্টেশন নোট

Hamming distance কেবল সমান দৈর্ঘ্যের সিকোয়েন্সের জন্যই নির্ধারিত, তাই ভিন্ন দৈর্ঘ্যের সিকোয়েন্সের মধ্যে এটি হিসাব করার চেষ্টা কাজ করা উচিত নয়।

GitHub-এর মাধ্যমে সম্পাদনা করুন লিংকটি একটি নতুন উইন্ডো বা ট্যাবে খোলে
Haskell Exercism

Hamming শুরু করতে প্রস্তুত?

Exercism-এ সাইন আপ করুন, Haskell ট্র্যাকের 107টি অনুশীলনী আর সত্যিকারের মানুষের মেন্টরিং দিয়ে শিখুন ও দক্ষ হয়ে উঠুন, সম্পূর্ণ বিনামূল্যে।