剑指 Offer 21. 调整数组顺序使奇数位于偶数前面
方法一 双指针
大的while中的两个小while也需要判断 i 和 j , 实际上当i == j时第一个小循环跳出,第二个小循环也不会再进行。
1 /** 2 * @param {number[]} nums 3 * @return {number[]} 4 */ 5 var exchange = function(nums) { 6 let i = 0, j = nums.length - 1; 7 while(i < j) { 8 while(nums[i] % 2 == 1 && i < j) { 9 i++; 10 } 11 while(nums[j] % 2 == 0 && i < j){ 12 j--; 13 } 14 // console.log(`i=${i} j=${j}`); 15 let temp = nums[i]; 16 nums[i++] = nums[j]; 17 nums[j--] = temp; 18 } 19 return nums; 20 };

#
浙公网安备 33010602011771号