বাছাই করার অর্থ উপাদানগুলির মধ্যে কিছু লৈঙ্গিক সম্পর্ক অনুযায়ী ক্রমবর্ধমান বা হ্রাসমান ক্রমে কোনও ডেটা সাজানো। বুদ্বুদ সাজানোর উপর এই নিবন্ধ আপনাকে এই ধারণাটি বিশদভাবে বুঝতে সহায়তা করবে।
আমরা এই ব্লগে নীচের বিষয়গুলি কভার করব:
- বুদ্বুদ বাছাই কি?
- বুদ্বুদ বাছাই করার পদক্ষেপ
- বুদ্বুদ বাছাই অ্যালগরিদম
- পাইথন প্রোগ্রাম প্রয়োগ করা বাবল বাছাই করুন
বুদ্বুদ বাছাই কি?
বুদ্বুদ সাজানোর ডুবন্ত বাছা হিসাবেও পরিচিত। এটি একটি সহজ বাছাই করা অ্যালগরিদম যা তালিকার ক্রমাগত বাছাই করার জন্য ক্রমাগত পদক্ষেপগুলি সংলগ্ন আইটেমগুলির প্রতিটি জোড়া তুলনা করে এবং সঠিক ক্রমে না থাকলে সেগুলি অদলবদল করে। আর কোনও অদলবদলের প্রয়োজন না হওয়া পর্যন্ত পদক্ষেপগুলি পুনরাবৃত্তি করা হয়, যা তালিকাটি বাছাই করা হয়।
বুদ্বুদ বাছাই করার পদক্ষেপ
- তালিকার প্রথম এবং দ্বিতীয় উপাদানটির তুলনা করুন এবং যদি তারা ভুল ক্রমে থাকে তবে অদলবদল করুন।
- দ্বিতীয় এবং তৃতীয় উপাদানটির তুলনা করুন এবং যদি তারা ভুল ক্রমে থাকে তবে এগুলি অদলবদল করুন।
- অনুরূপ ফ্যাশনে তালিকার শেষ উপাদান পর্যন্ত একইভাবে এগিয়ে যান।
- তালিকাটি বাছাই না করা পর্যন্ত উপরের সমস্ত পদক্ষেপের পুনরাবৃত্তি করুন।
উপরের পদক্ষেপগুলি নিম্নলিখিত ভিজ্যুয়ালাইজেশন দ্বারা আরও স্পষ্ট হবে -
বুদ্বুদ বাছাই অ্যালগরিদম
এখন আসুন আমরা বুদ্বুদ বাছাইয়ের পিছনে অ্যালগরিদমটি দেখি।
প্রথম পাস:
( 16.19 11,15,10 ডলার) -> ( 16.19 11,15,10 ডলার) - অ্যালগরিদম 19> 16 থেকে প্রথম দুটি উপাদান এবং অদলবদলের তুলনা করে
(১,, 19.11 15.10) -> (১,, 11.19 15.10) - 19> 11 সাল থেকে অদলবদল করুন
(16.11, 19.15 , 10) -> (16,11, 15.19 , 10) - 19> 15 সাল থেকে অদলবদল করুন
(16,11,15, 19.10 ) -> (16,11,15, 10.19 ) - এখন, যেহেতু এই উপাদানগুলি ইতিমধ্যে সঠিক ক্রমে (19> 10) রয়েছে, তাই অ্যালগরিদম এগুলিকে অদলবদল করে না।
দ্বিতীয় পাস:
সি ++ আরোহী ক্রমে সংখ্যা বাছাই করুন
( 16.11 , 15,10,19) -> ( 11.16 , 15,10,19) - 16> 11 সাল থেকে অদলবদল করুন
(এগারো, 16.15 , 10.19) -> (11, 15.16 , 10,19) - 16> 15 সাল থেকে অদলবদল করুন
(১১.১৫, 16.10 , 19) -> (11,15, 10.16 , 19) - 16> 10 সাল থেকে অদলবদল করুন
(11,15,10,16,19) -> (11,15,10,16,19)
দ্য বাছাই করা হয়, তবে আমাদের আলগো এটি জেনে যায় না এটি সম্পূর্ণ হয়েছে কিনা। সুতরাং, এটি বাছাই করা হয়েছে তা জানতে কোনও অদলবদল ছাড়াই এটি আরও একটি পুরো পাসের প্রয়োজন।
তৃতীয় পাস:
কিভাবে জাভা অচলাবস্থা এড়াতে
(এগারো, 15.10 , 16,19) -> (11, 15.10 , 16,19)
(এগারো, 15.10 , 16,19) -> (11, 10.15 , 16,19) - 15> 10 সাল থেকে অদলবদল করুন
(11,10,15,16,19) -> (11,10,15,16,19)
(11,10,15,16,19) -> (11,10,15,16,19)
চতুর্থ পাস:
( 11.10 , 15,16,19) -> ( 10.11 , 15,16,19) - 11> 10 সাল থেকে অদলবদল করুন
চূড়ান্ত আউটপুট (10,11,15,16,19)
এখনই এটি কোড করি -
বাজল বাছাই বাস্তবায়নের জন্য পাইথন প্রোগ্রাম
a = [16, 19, 11, 15, 10, 12, 14]
# পুনরায় পুনরায় পুনরায় পুনরুক্তকরণ (ক) (উপাদানগুলির সংখ্যা) জে রেঞ্জের জন্য সংখ্যা (লেন (ক)): # স্বাক্ষরিতভাবে অদলবদল হয় মিথ্যা অদলবদল = মিথ্যা আই = 0 যখন আইআইএ [i + 1]: # অদলবদল [i ], a [i + 1] = a [i + 1], a [i] # অদলবদল হওয়া অদলবদলের মান পরিবর্তন করা = সত্য i = i + 1 # যদি অদলবদল হয় তবে তালিকাটি বাছাই করা হয় # আমরা লুপটি থামাতে পারি যদি অদলবদল == মিথ্যা: প্রিন্ট বিরতি (ক)
আউটপুট:
উপরের কোডে, আমরা সংলগ্ন সংখ্যাগুলি তুলনা করি এবং সেগুলি সঠিক ক্রমে না থাকলে সেগুলিকে অদলবদল করি। একই প্রক্রিয়া লেন (ক) বার বার পুনরাবৃত্তি করুন। আমরা কোনও পরিবর্তনশীল ‘অদলবদল’ বরাদ্দ করেছি এবং যদি কোনও দুটি উপাদান পুনরাবৃত্তির জন্য অদলবদল হয় তবে এটিকে ‘সত্য’ করে তুলেছি। এবং যদি উপাদানের কোনও আদান-প্রদান না হয় তবে তালিকাটি ইতিমধ্যে সাজানো হয়েছে এবং তাই, 'অদলবদল' এর মানতে কোনও পরিবর্তন নেই এবং আমরা লুপটি ভেঙে ফেলতে পারি।
এটির সাথে আমরা 'পাইথনে বুদ্বুদ বাছাই কিভাবে বাস্তবায়ন করব' শিরোনামের ব্লগের শেষে এসেছি। আমি আশা করি বিষয়বস্তুটি আপনার পাইথন জ্ঞানের সাথে যুক্ত হয়েছে।
আপনি যথাসম্ভব অনুশীলন নিশ্চিত করুন এবং আপনার অভিজ্ঞতাটি ফিরিয়ে দিন।আমাদের জন্য একটি প্রশ্ন আছে? দয়া করে এটি 'পাইথনে বুদ্বুদ বাছাই কিভাবে বাস্তবায়ন করবেন' ব্লগের মন্তব্য বিভাগে উল্লেখ করুন এবং আমরা যত তাড়াতাড়ি সম্ভব আপনার কাছে ফিরে আসব।
পাইথনের বিভিন্ন অ্যাপ্লিকেশন সহ গভীরতর জ্ঞান পেতে, আপনি লাইভের জন্য তালিকাভুক্ত করতে পারেন 24/7 সমর্থন এবং আজীবন অ্যাক্সেস সহ।