Computer >> คอมพิวเตอร์ >  >> การเขียนโปรแกรม >> Python

โปรแกรมจัดเรียงอาร์เรย์ตามค่าพาริตีใน Python


สมมุติว่าเรามีอาร์เรย์ A ที่มีจำนวนเต็มไม่กี่จำนวน เราต้องเรียงตัวเลขเป็นคู่แล้วคี่ ให้ใส่เลขคู่ก่อน ตามด้วยเลขคี่ ดังนั้นหากอาร์เรย์เป็นเหมือน A =[1, 5, 6, 8, 7, 2, 3] ผลลัพธ์จะเป็นเช่น [6, 8, 2, 1, 5, 7, 3]

เพื่อแก้ปัญหานี้ เราจะทำตามขั้นตอนเหล่านี้ -

  • ตั้งค่า i :=0 และ j :=0

  • ในขณะที่ j <ขนาดของ arr

    • ถ้า arr[j] เป็นคู่ ดังนั้น

      • สลับ arr[i] และ arr[j],

      • เพิ่มขึ้น 1

    • เพิ่มขึ้น 1

  • กลับ arr

ให้เราดูการใช้งานต่อไปนี้เพื่อความเข้าใจที่ดีขึ้น -

ตัวอย่าง

class Solution(object):
   def sortArrayByParity(self, a):
      i = 0
      j =0
      while j < len(a):
         if a[j]%2==0:
            a[i],a[j] = a[j],a[i]
            i+=1
         j+=1
   return a
ob1 = Solution()
nums = [1,5,6,8,7,2,3]
print(ob1.sortArrayByParity(nums))

อินพุต

[1,5,6,8,7,2,3]

ผลลัพธ์

[6,8,2,5,7,1,3]