কম্পিউটার

পাইথনে জিরোস ডুপ্লিকেট


ধরুন আমাদের কাছে পূর্ণসংখ্যার একটি নির্দিষ্ট দৈর্ঘ্যের অ্যারে আছে, আমাদেরকে শূন্যের প্রতিটি ঘটনাকে ডুপ্লিকেট করতে হবে, বাকি উপাদানগুলিকে ডানদিকে স্থানান্তর করতে হবে।

মনে রাখবেন যে মূল অ্যারের দৈর্ঘ্যের বাইরের উপাদানগুলি লেখা হয় না৷

সুতরাং ধরুন অ্যারেটি [1,0,2,3,0,4,5,0] এর মতো, তাহলে পরিবর্তন করার পরে এটি হবে [1,0,0,2,3,0,0,4]

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

  • অন্য অ্যারে arr2-এ arr কপি করুন, i এবং j কে 0 হিসাবে সেট করুন
  • যখন i
  • যদি arr2[i] শূন্য হয়, তাহলে
    • arr[i] :=0
    • i 1 দ্বারা বাড়ান
    • যদি i
  • অন্য arr[i] :=arr2[j]
  • i এবং j 1 দ্বারা বাড়ান

উদাহরণ

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

class Solution(object):
   def duplicateZeros(self, arr):
      arr2 = [i for i in arr]
      i=0
      j = 0
      while i < len(arr):
         if not arr2[j]:
            arr[i] = 0
            i+=1
            if i<len(arr):
               arr[i] = 0
         else:
            arr[i] = arr2[j]
         j+=1
         i+=1
      return arr
ob1 = Solution()
print(ob1.duplicateZeros([1,0,2,3,0,4,5,0]))

ইনপুট

[1,0,2,3,0,4,5,0]

আউটপুট

[1,0,0,2,3,0,0,4]

  1. একটি পাইথন স্ট্রিং এর পিছনের জিরো যোগ করুন

  2. পাইথনে ডুপ্লিকেট নম্বর খুঁজুন

  3. পাইথনে ডুপ্লিকেট রয়েছে

  4. পাইথন স্ট্রিং-এ লিডিং জিরোস যোগ করুন