একটি অ্যারে এবং অ্যারের পরিসর দেওয়া হয়েছে [স্টার্টভাল, এন্ডভাল]। অ্যারে তিনটি অংশ দ্বারা বিভক্ত।
- স্টার্টভাল থেকে ছোট সমস্ত উপাদান প্রথমে আসে৷
- রেঞ্জ স্টার্টভাল থেকে এন্ডভাল এর সমস্ত উপাদান পরবর্তীতে আসে।
- এন্ডভালের চেয়ে বড় সমস্ত উপাদান শেষ পর্যন্ত উপস্থিত হয়৷
উদাহরণ
ইনপুট:A =[1, 14, 51, 12, 4, 2, 54, 20, 87, 98, 3, 1, 32] স্টার্টভাল =14, এন্ডভাল =54 আউটপুট:A =[1, 12, 4 , 2, 3, 1, 14, 51, 20, 32,54, 87, 98]
অ্যালগরিদম
ধাপ1:প্রথমে তালিকাটি তিনটি অংশে বিভক্ত, প্রথম অংশে স্টার্টভালের চেয়ে কম উপাদান থাকবে, দ্বিতীয় অংশে স্টার্টভাল এবং এন্ডভালের মধ্যে উপাদান থাকবে এবং তৃতীয় অংশে এন্ডভালের চেয়ে বেশি উপাদান থাকবে। ধাপ 2:তিনটি অংশ একসঙ্গে সংযুক্ত করুন।
উদাহরণ কোড
def partition_array(input, lowVal, highVal):# তিনটি অংশে পৃথক ইনপুট তালিকা my_first =[ num for num input if num=lowVal এবং num<=highVal) ] my_third =[ num for num input if num>highVal # তিনটি অংশের ছাপ (my_first + my_second + my_third)# ড্রাইভার programif __name__ =="__main__":my_input =[10, 140, 05, 05 40, 20, 540, 200, 870, 980, 30, 10, 320] my_lowVal =140 my_highVal =200 partition_array(my_input, my_lowVal, my_highVal)