905. 按奇偶排序数组
双指针的简单运用,左边找到奇数,右边找到偶数就交换,这样保证了奇数一定在后,偶数一定在前
时间复杂度:O(n)O(n)O(n)
class Solution {
public:
vector<int> sortArrayByParity(vector<int>& nums) {
for (int i = 0, j = nums.size() - 1; i < j; i ++, j -- ) {
while (i < j && nums[i] % 2 == 0) i ++ ;
while (i < j && nums[j] % 2 == 1) j -- ;
swap(nums[i], nums[j]);
}
return nums;
}
};
本文介绍了一种利用双指针技巧对整数数组进行奇偶排序的方法,通过不断交换左右两端的奇数和偶数元素,确保奇数在偶数之前,时间复杂度为O(n)。
652

被折叠的 条评论
为什么被折叠?



