Giả sử, chúng ta có một mảng A với vài số nguyên. Chúng ta phải sắp xếp các số từ chẵn đến lẻ. Vì vậy, đặt các số chẵn lúc đầu, sau đó các số lẻ. Vì vậy, nếu mảng giống như A =[1, 5, 6, 8, 7, 2, 3], thì kết quả sẽ giống như [6, 8, 2, 1, 5, 7, 3]
Để giải quyết vấn đề này, chúng tôi sẽ làm theo các bước sau -
-
đặt i:=0 và j:=0
-
trong khi j
-
nếu arr [j] là chẵn thì
-
hoán đổi arr [i] và arr [j],
-
tăng tôi lên 1
-
-
tăng j lên 1
-
-
return arr
Hãy cùng chúng tôi xem cách triển khai sau để hiểu rõ hơn -
Ví dụ
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))
Đầu vào
[1,5,6,8,7,2,3]
Đầu ra
[6,8,2,5,7,1,3]