কম্পিউটার

পাইথনে একটি অ্যারে সাজানো এবং ঘোরানো হয়েছে কিনা তা পরীক্ষা করার জন্য প্রোগ্রাম


ধরুন আমাদের কাছে nums নামে একটি অ্যারে আছে, আমাদের পরীক্ষা করতে হবে যে অ্যারেটি আসলে অ-হ্রাস না হওয়া ক্রমে সাজানো হয়েছে এবং তারপর কিছু সংখ্যক অবস্থান ঘোরানো হয়েছে (শূন্য হতে পারে) বা না। সদৃশগুলি অ্যারেতেও উপস্থিত হতে পারে৷

সুতরাং, যদি ইনপুটটি nums =[12,15,2,5,6,9] এর মত হয়, তাহলে আউটপুট হবে True, কারণ এটি দুটি জায়গায় ডানদিকে ঘোরানো হয়

এটি সমাধান করতে, আমরা এই পদক্ষেপগুলি অনুসরণ করব -

  • j :=0

  • যখন j <সংখ্যার আকার - 1 এবং সংখ্যা[j] <=সংখ্যা[j + 1], করবেন

    • j :=j + 1

  • res :=(সূচক j + 1 থেকে nums এর শেষ পর্যন্ত nums এর subarray) concatenate (index 0 থেকে j পর্যন্ত nums)

  • আমি 0 থেকে রেঞ্জ- 1-এর মাপ রেঞ্জের জন্য, কর

    • যদি res[i]> res[i + 1] হয়, তাহলে

      • রিটার্ন ফলস

  • রিটার্ন ট্রু

উদাহরণ (পাইথন)

আরো ভালোভাবে বোঝার জন্য আসুন নিচের বাস্তবায়ন দেখি -

def solve(nums):
   j = 0
   while (j < len(nums) - 1 and nums[j] <= nums[j + 1]):
      j += 1
   res = nums[j + 1 : len(nums)] + nums[0:j + 1]
   for i in range(len(res) - 1):
      if res[i] > res[i + 1]:
         return False
   return True

nums = [12,15,2,5,6,9]
print(solve(nums))

ইনপুট

[12,15,2,5,6,9]

আউটপুট

True

  1. প্রদত্ত অ্যারেটি মনোটোনিক কিনা তা পরীক্ষা করার জন্য পাইথন প্রোগ্রাম

  2. পাইথন প্রোগ্রামে সন্নিবেশ বাছাই

  3. সন্নিবেশ সাজানোর জন্য পাইথন প্রোগ্রাম

  4. পাইথন প্রোগ্রাম একটি তালিকা খালি কি না পরীক্ষা করতে?