給定乙個非負整數陣列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] 也會被接受。
2 <= a.length <= 20000
a.length % 2 == 0
0 <= a[i] <= 1000
解法1:
思路:雙指標思想,需要輔助空間,定義乙個新的與舊陣列等長的陣列,定義兩個指標分別指向新陣列的偶數和計數字置。遍歷原陣列,遇到奇數則將其放到新陣列奇數指標位置,奇數指標前移兩個位置;遇到偶數則將其放到新陣列偶數指標位置,偶數指標前移兩個位置。
**實現:
class solution
int temp=a[i];
a[i]=a[j];
a[j]=temp;}}
return a;
}}
LeetCode 按奇偶排序陣列
給定乙個非負整數陣列a,返回乙個由a的所有偶數元素組成的陣列,後面跟a的所有奇數元素。你可以返回滿足此條件的任何陣列作為答案。示例 輸入 3,1,2,4 輸出 2,4,3,1 輸出 4,2,3,1 2,4,1,3 和 4,2,1,3 也會被接受。1 a.length 50000 a i 5000cl...
Leetcode 按奇偶排序陣列
給定乙個非負整數陣列a,返回乙個由a的所有偶數元素組成的陣列,後面跟a的所有奇數元素。你可以返回滿足此條件的任何陣列作為答案。示例 輸入 3,1,2,4 輸出 2,4,3,1 輸出 4,2,3,1 2,4,1,3 和 4,2,1,3 也會被接受。1 a.length 50000 a i 5000in...
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 也會被接...