public static int[] exchange(int[] nums) { // 双指针 int p1 = 0; int p2 = nums.length - 1; // 结束条件 两个指针碰头了 while (p1 <= p2){ // 前面遇到偶数了 if (nums[p1] % 2 == 0){ // 而且后面遇到奇数了 if (nums[p2] % 2 != 0){ // 交换位置 前指针后移 后指针前移 int temp = nums[p1]; nums[p1] = nums [p2]; nums[p2] = temp; p1++; } // 后面没遇到奇数 后指针一直前移 p2--; }else { // 前面没遇到偶数 前指针一直后移 p1++; } } return nums; }
剑指Offer-20调整数组顺序使奇数位于偶数前面
猜你喜欢
转载自blog.csdn.net/a792396951/article/details/113699535
今日推荐
周排行