基於 Python 中奇偶值對陣列進行排序的程式


假設我們有一個包含一些整數的陣列 A。我們必須按奇偶數對數字進行排序。因此,先把偶數放前面,然後把奇數放在後面。因此,如果陣列為 A = [1, 5, 6, 8, 7, 2, 3],則結果將為 [6, 8, 2, 1, 5, 7, 3]

要解決這個問題,我們將按照以下步驟操作 -

  • 設定 i := 0 和 j := 0

  • while j < size of arr

    • if arr[j] is even, then

      • swap arr[i] 和 arr[j],

      • 將 i 增加 1

    • 將 j 增加 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]

更新日期: 2020-10-21

250 次瀏覽

開啟你的職業生涯

完成課程後獲得認證

開始
廣告
© . All rights reserved.