สมมุติว่าเรามีอาร์เรย์ 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]