নির্বাচন বাছাই কিভাবে ব্যবহার করবেন

নির্বাচন বাছাই কিভাবে ব্যবহার করবেন

বাছাই বাছাই হল একটি বাছাই করার কৌশল যা একটি তালিকা আইটেম নির্বাচন করে এবং তারপর অন্যটির সাথে তার স্থান বদল করে। এটি বৃহত্তম আইটেম নির্বাচন করে এবং তারপর তালিকার সর্বোচ্চ সূচিতে একটি আইটেম দিয়ে অদলবদল করে।





তালিকাটি সাজানো না হওয়া পর্যন্ত অ্যালগরিদম বারবার এটি করে। নির্বাচন বাছাই কিভাবে কাজ করে তা সম্পর্কে আপনি নিশ্চিত না হলে, আপনি সঠিক জায়গায় এসেছেন। আমরা একটি উদাহরণ দেখানোর সাথে সাথে নীচে এটি আরও গভীরভাবে ব্যাখ্যা করব।





বাছাই বাছাই: একটি ঘনিষ্ঠ চেহারা

ধরুন আপনার তালিকা আছে: [39, 82, 2, 51, 30, 42, 7]। বাছাই বাছাই ব্যবহার করে তালিকা সাজানোর জন্য, আপনাকে প্রথমে এটিতে সর্বোচ্চ নম্বরটি খুঁজে পেতে হবে।





প্রদত্ত তালিকার সাথে, সেই সংখ্যাটি .২। সর্বোচ্চ সূচকে (অর্থাৎ,)) সংখ্যার সাথে 82২ অদলবদল করুন।

প্রথম পাসের পর, নতুন তালিকা ক্রম হবে: [39, 7, 2, 51, 30, 42, 82]। প্রতিবার অ্যালগরিদম পুরো তালিকার মধ্য দিয়ে যায়, একে 'পাস' বলা হয়।



লক্ষ্য করুন যে তালিকাটি সাজানোর প্রক্রিয়ার সময় একটি বাছাই করা সাবলিস্ট এবং একটি বাছাই না করা সাবলিস্ট বজায় রাখে।

কিভাবে কম্পিউটারকে ওয়াইফাই এর সাথে সংযুক্ত করা যায়

সম্পর্কিত: বিগ-ও নোটেশন কি?





মূল তালিকাটি শূন্য আইটেমের একটি বাছাই করা তালিকা এবং সমস্ত আইটেমের একটি বাছাইকৃত তালিকা দিয়ে শুরু হয়। তারপর প্রথম পাসের পরে, এটি একটি সাজানো তালিকা আছে যার সংখ্যা মাত্র 82।

দ্বিতীয় পাসে, অননুমোদিত সাবলিস্টে সর্বোচ্চ নম্বর 51 হবে। এই নম্বরটি 42 এর সাথে বিনিময় করা হবে নীচে নতুন তালিকা অর্ডার দিতে:





কিভাবে মাইনক্রাফ্টে বন্ধুদের সাথে খেলতে হয়

[39, 7, 2, 42, 30, 51, 82]।

পুরো তালিকাটি সাজানো না হওয়া পর্যন্ত প্রক্রিয়াটি পুনরাবৃত্তি হয়। নীচের চিত্রটি পুরো প্রক্রিয়াটির সংক্ষিপ্তসার দেয়:

গা bold় কালো সংখ্যাগুলি সেই সময়ে সর্বোচ্চ তালিকার মান দেখায়। সবুজ যারা সাজানো sublist প্রদর্শন।

অ্যালগরিদম বিশ্লেষণ

এই অ্যালগরিদমের জটিলতা (বিগ-ও স্বরলিপি ব্যবহার করে) পেতে, নীচে অনুসরণ করুন:

প্রথম পাসে, (n-1) তুলনা করা হয়। দ্বিতীয় পাসে, (n-2)। তৃতীয় পাসে, (n-3) এবং তাই (n-1) th পাস পর্যন্ত যা শুধুমাত্র একটি তুলনা করে।

নীচের হিসাবে তুলনা সমষ্টি তুলে ধরে:

(n-1)+ (n-1)+ (n-1)+ ...+ 1 = ((n-1) n)/2।

অতএব নির্বাচন বাছাই হল O (n2)।

কোড বাস্তবায়ন

কোডটি ফাংশন দেখায় যা আপনি পাইথন এবং জাভা ব্যবহার করে নির্বাচন বাছাই করার জন্য ব্যবহার করতে পারেন।

পাইথন:

def selectionSort(mylist):
for x in range(len(mylist) - 1, 0, -1):
max_idx = 0
for posn in range(1, x + 1):
if mylist[posn] > mylist[max_idx]:
max_idx = posn
temp = mylist[x]
mylist[x] = mylist[max_idx]
mylist[max_idx] = temp

জাভা:

void selectionSort(int my_array[]){
for (int x = 0; x {
int index = x;
for (int y = x + 1; y if (my_array[y] index = y; // find lowest index
}
}
int temp = my_array[index]; // temp is a temporary storage
my_array[index] = my_array[x];
my_array[x] = temp;
}}

সিলেকশন সার্ট থেকে মার্জ বাছাইয়ের দিকে এগিয়ে যাওয়া

উপরের অ্যালগরিদম বিশ্লেষণ দেখিয়েছে, নির্বাচন সাজানোর অ্যালগরিদম হল O (n2)। এর একটি সূচকীয় জটিলতা রয়েছে এবং তাই এটি খুব বড় ডেটা সেটের জন্য অকার্যকর।

কিভাবে মাইক জোরে উইন্ডোজ 10 করতে হয়

ব্যবহার করার জন্য একটি আরও ভাল অ্যালগরিদম হবে O (nlogn) এর জটিলতার সাথে মার্জ সাজানোর। এবং এখন আপনি জানেন কিভাবে বাছাই বাছাই কাজ করে, পরবর্তীতে অ্যালগরিদম সাজানোর জন্য আপনার অধ্যয়নের তালিকায় মার্জ সাজানো উচিত।

শেয়ার করুন শেয়ার করুন টুইট ইমেইল 8 টি সেরা ওয়েবসাইট বিনামূল্যে অডিওবুক ডাউনলোড করার জন্য

অডিওবুক বিনোদনের একটি বড় উৎস, এবং হজম করা অনেক সহজ। এখানে আটটি সেরা ওয়েবসাইট রয়েছে যেখানে আপনি সেগুলি বিনামূল্যে ডাউনলোড করতে পারেন।

পরবর্তী পড়ুন
সম্পর্কিত বিষয়
  • প্রোগ্রামিং
  • প্রোগ্রামিং
  • অ্যালগরিদম
লেখক সম্পর্কে জেরোম ডেভিডসন(22 নিবন্ধ প্রকাশিত)

জেরোম MakeUseOf এর একজন স্টাফ রাইটার। তিনি প্রোগ্রামিং এবং লিনাক্সের নিবন্ধগুলি জুড়েছেন। তিনি একজন ক্রিপ্টো উৎসাহী এবং সবসময় ক্রিপ্টো শিল্পের উপর নজর রাখেন।

জেরোম ডেভিডসন থেকে আরো

আমাদের নিউজলেটার সদস্যতা

প্রযুক্তি টিপস, রিভিউ, ফ্রি ইবুক এবং এক্সক্লুসিভ ডিলের জন্য আমাদের নিউজলেটারে যোগ দিন!

সাবস্ক্রাইব করতে এখানে ক্লিক করুন