剑指 Offer 21. 调整数组顺序使奇数位于偶数前面

package leetcode;

public class offer_21 {
    
    public int[] exchange(int[] nums) {
        int left=0;
        int right=nums.length-1;
        int temp;
        while(left<right) {
            //如果是奇数则left加一
            while(left<right&&nums[left]%2!=0) {
                left=left+1;
            }
            //如果是偶数则right减一
            while(left<right&&nums[right]%2==0) {
                right=right-1;
            }
            //互换两个的位置
            if(nums[left]%2==0&&nums[right]!=0) {
                temp=nums[left];
                nums[left]=nums[right];
                nums[right]=temp;
                left=left+1;
                right=right-1;
            }
        }
        
        return nums;
    }
    public static void main(String[] args) {
        // TODO Auto-generated method stub
        offer_21 off=new offer_21();
        int[] nums= {1,2,3,4};
        off.exchange(nums);
        for(int i:nums) {System.out.println(i);}
    }

}

 

posted on 2022-03-14 09:58  一仟零一夜丶  阅读(6)  评论(0)    收藏  举报