有一个整数顺序表,设计一个尽可能高效的算法将所有负整数的元素移动到其他元素的前面。
public static void moveNegativeNumbers(int[] nums) {
int i = 0, j = nums.length - 1;
while (i < j) {
if (nums[i] < 0 && nums[j] >= 0) {
int temp = nums[i];
nums[i] = nums[j];
nums[j] = temp;
i++;
j--;
} else if (nums[i] >= 0) {
i++;
} else if (nums[j] < 0) {
j--;
}
}
}