题目来源:
leetcode题目,网址:2164. 对奇偶下标分别排序 - 力扣(LeetCode)
解题思路:
两次冒泡即可。
解题代码:
class Solution {
public int[] sortEvenOdd(int[] nums) {
for(int i=1;i<nums.length;i=i+2){
for(int j=1;j<nums.length-i-1;j=j+2){
if(nums[j]<nums[j+2]){
int temp=nums[j];
nums[j]=nums[j+2];
nums[j+2]=temp;
}
}
}
for(int i=0;i<nums.length;i=i+2){
for(int j=0;j<nums.length-i-2;j=j+2){
if(nums[j]>nums[j+2]){
int temp=nums[j];
nums[j]=nums[j+2];
nums[j+2]=temp;
}
}
}
return nums;
}
}
总结:
官方题解是创建两个辅助数组后分别排序,然后再将其合成为一个。