If you're seeing this message, it means we're having trouble loading external resources on our website.

তোমার যদি কোন ওয়েব ফিল্টার দেওয়া থাকে, তাহলে দয়া করে নিশ্চিত কর যে *.kastatic.org এবং *.kasandbox.org ডোমেইনগুলো উন্মুক্ত।

মূল বিষয়বস্তু

সিলেকশন সর্ট সুডোকোড

কার্ড বাছায় করার জন্য বেশ কয়েকটি পদ্ধতি রয়েছে। সবচেয়ে সরলটিকে বলা হয় সিলেকশন সর্ট, উপরের কার্ডগুলো সম্ভবত যেভাবে তুমি বাছাই করেছ এই পদ্ধতিও অনেকটা সেই রকম:
  1. ক্ষুদ্রতম কার্ডটি খোঁজ। প্রথম কার্ডের সাথে এই কার্ডটি বিনিময় কর।
  2. দ্বিতীয় ক্ষুদ্রতম কার্ড খোঁজ। দ্বিতীয় কার্ডের সাথে এই কার্ডটি বিনিময় কর।
  3. তৃতীয় ক্ষুদ্রতম কার্ড খোঁজ। তৃতীয় কার্ডের সাথে এই কার্ডটি বিনিময় কর।
  4. পরের ছোট কার্ডটি পুনরায় খোঁজা শুরু কর এবং কার্ডের অবস্থান বদল করতে থাক যতক্ষণ পর্যন্ত না অ্যারেটি সর্টেড অবস্থায় না আসে।
এই অ্যালগোরিদমকে সিলেকশন সর্ট বলা হয় কারণ এটি পরবর্তী ছোট উপাদান নির্বাচন করে বিনিময় করে।
নিচে অ্যালগোরিদমটি দেওয়া হল। "Step" এ ক্লিক করে অ্যালগোরিদমের ধাপগুলো দেখো এবং তারপর "Automatic" ক্লিক করে সবগুলো ধাপ একসাথে স্বয়ংক্রিয়ভাবে দেখো।
এটি দেখার পর, অ্যালগোরিদম সম্পর্কে তোমার কি ধারণা? এটির কোন ধাপটি সবচেয়ে বেশি সময় নেয়? এটি বড় অ্যারেতে কেমন কাজ করবে বলে মনে হয়? এগুলো স্মরণ রেখে অ্যালগোরিদমের প্রয়োগ দেখা যাক।

সাব-অ্যারেতে সর্বনিম্ন উপাদান নির্ণয় করা

সিলেকশন সর্টের একটি ধাপ হল ছোট কার্ডটি খুঁজে বের করে এটিকে সঠিক স্থানে রাখা। উদাহরণস্বরূপ, যদি অ্যারেতে প্রাথমিক মান হিসেবে [13, 19, 18, 4, 10] থাকে, আমাদের প্রথমে সবচেয়ে ছোট মানের ইন্ডেক্স নির্ণয় করতে হবে। যেহেতু 4 হল সবচেয়ে ছোট মান, তাই ছোট মানটির ইন্ডেক্স হল 3।
সিলেকশন সর্ট 3 নং ইন্ডেক্সের মানটিকে 0 ইন্ডেক্সের মানের সাথে বিনিময় করবে, অর্থাৎ, [4, 19, 18, 13, 10] হবে। এখন পরবর্তী ছোট মান নির্ণয় করে 1 নং ইন্ডেক্সের সাথে বিনিময় করতে হবে।
পরবর্তী ছোট মানের ইন্ডেক্স পাওয়ার কোডটি হয়তো একটু জটিল হতে পারে। কিন্তু আমি নিশ্চিত যে তুমি এটি করতে পারবে, কিন্তু এটি করার একটি সহজ উপায় রয়েছে। যেহেতু 0 ইন্ডেক্সের সাথে ছোট মানটি বিনিময় করা হয়েছে, আমরা আসলে পরবর্তী ছোট মানটি 1 নং ইন্ডেক্স থেকে খুঁজে বের করতে চাই। আমরা অ্যারের অংশকে সাব-অ্যারে বলে থাকি, এই ক্ষেত্রে, আমরা সাব-অ্যারের ইন্ডেক্স 1 থেকে শুরু করে ছোট মানটি নির্ণয় করবো। উদাহরণস্বরূপ, যদি সম্পূর্ণ অ্যারে [4, 19, 18, 13, 10] হয়, তাহলে সাব-অ্যারেতে ইন্ডেক্স 1 থেকে শুরু হওয়া সবচেয়ে ছোট মানটি হল 10 এবং সম্পূর্ণ অ্যারেতে এটির ইন্ডেক্স হল 4। সুতরাং, দ্বিতীয় ছোট মানের ইন্ডেক্স হল 4।
পরবর্তী চ্যালেঞ্জে এটি চেষ্টা করে দেখো এবং তারপর তুমি সম্পূর্ণ সিলেকশন সর্ট অ্যালগোরিদমটি সঠিকভাবে অনুধাবন করতে পারবে।
এই বিষয়বস্তুটি Dartmouth Computer Science এর প্রফেসর Thomas Cormen এবং Devin Balkcom এর সহযোগিতায় এবং একই সাথে খান একাডেমির কম্পিউটিং শিক্ষাক্রম দলের একসাথে কাজ করার মাধ্যমে তৈরি করা হয়েছে। এই বিষয়বস্তু CC-BY-NC-SA দিয়ে লাইসেন্সকৃত।

আলোচনায় অংশ নিতে চাও?

কোন আলাপচারিতা নেই।
ইংরেজি জানো? খান একাডেমির ইংরেজি সাইটে আরো আলোচনা দেখতে এখানে ক্লিক কর।