按奇偶排序陣列II

2022-01-10 08:39:47 字數 852 閱讀 1358

給定乙個非負整數陣列aa中一半整數是奇數,一半整數是偶數。

對陣列進行排序,以便當a[i]為奇數時,i也是奇數;當a[i]為偶數時,i也是偶數。

你可以返回任何滿足上述條件的陣列作為答案。

輸入:[4,2,5,7]

輸出:[4,5,2,7]

解釋:[4,7,2,5],[2,5,4,7],[2,7,4,5] 也會被接受。

/**

* @param a

* @return

*/var sortarraybyparityii = function(arr) )

let target = arr.map((v, i) => )

return target;

};

本題是分配奇偶數的問題,名義上是排序,其實將奇偶數分配即可,首先遍歷陣列,將陣列中的奇數與偶數分別取出並置入陣列,之後再次遍歷陣列根據下標分別從奇數陣列與偶數陣列置入目標陣列即可,使用雙指標原地修改陣列也可完成本題。首先分別定義奇數陣列與偶數陣列,之後進行遍歷,如果這個數是奇數,就將其加入奇數陣列,同樣如果是偶數就加入偶數陣列,之後進行map遍歷,如果下標是奇數就將奇數陣列的相應位置上的值返回,否則就返回偶數陣列相應位置上的值,在這裡判斷奇偶性是通過位運算實現的,另外向下取整也是通過位運算隱式轉換為整數,進行map遍歷會生成新陣列,將新陣列返回即可。

922 按奇偶排序陣列 II

給定乙個非負整數陣列 a,a 中一半整數是奇數,一半整數是偶數。對陣列進行排序,以便當 a i 為奇數時,i 也是奇數 當 a i 為偶數時,i 也是偶數。你可以返回任何滿足上述條件的陣列作為答案。示例 輸入 4,2,5,7 輸出 4,5,2,7 解釋 4,7,2,5 2,5,4,7 2,7,4,5...

LeetCode 按奇偶排序陣列 II

給定乙個非負整數陣列a,a 中一半整數是奇數,一半整數是偶數。對陣列進行排序,以便當a i 為奇數時,i也是奇數 當a i 為偶數時,i也是偶數。你可以返回任何滿足上述條件的陣列作為答案。示例 輸入 4,2,5,7 輸出 4,5,2,7 解釋 4,7,2,5 2,5,4,7 2,7,4,5 也會被接...

Leetcode 按奇偶排序陣列 II

給定乙個非負整數陣列a,a 中一半整數是奇數,一半整數是偶數。對陣列進行排序,以便當a i 為奇數時,i也是奇數 當a i 為偶數時,i也是偶數。你可以返回任何滿足上述條件的陣列作為答案。示例 輸入 4,2,5,7 輸出 4,5,2,7 解釋 4,7,2,5 2,5,4,7 2,7,4,5 也會被接...