Hamming

Hamming

সহজ

নির্দেশনা

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

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

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

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

GAGCCTACTAACGGGAT
CATCGTAATGACGGCCT
^ ^ ^  ^ ^    ^^

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

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

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

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

লক্ষ্য করুন

Smalltalk-এ এক্সেপশনগুলো Exception-এর সাবক্লাসগুলোর ইনস্ট্যান্স। যদিও আপনি আপনার ডোমেইনের জন্য নিজের এক্সেপশন তৈরি করতে পারেন, তবুও এই হায়ারার্কিটি ব্রাউজ করলে আপনি আপনার সমাধান সহজ করতে উপযুক্ত কিছু বেছে নিতে পারেন।

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

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

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