添加0027.移除元素 相向双指针法Java版本

This commit is contained in:
Yuki Chen
2022-08-20 11:54:39 +08:00
parent d2e93611a7
commit d53246138d

View File

@ -146,7 +146,7 @@ public:
};
```
## 相关题目推荐
* 26.删除排序数组中的重复项
@ -154,10 +154,6 @@ public:
* 844.比较含退格的字符串
* 977.有序数组的平方
## 其他语言版本
@ -180,6 +176,26 @@ class Solution {
}
}
```
```java
//相向双指针法
class Solution {
public int removeElement(int[] nums, int val) {
int left = 0;
int right = nums.length - 1;
while(right >= 0 && nums[right] == val) right--; //将right移到从右数第一个值不为val的位置
while(left <= right) {
if(nums[left] == val) { //left位置的元素需要移除
//将right位置的元素移到left覆盖right位置移除
nums[left] = nums[right];
right--;
}
left++;
while(right >= 0 && nums[right] == val) right--;
}
return left;
}
}
```
Python