27. 移除元素
算法
双指针:
- 一个读指针(通过范围
for
遍历nums
) - 一个写指针
i
,用于记录当前应当写入的位置。 - 每次遇到不等于
val
的元素,就写入当前位置i
并将i ++
复杂度分析
- 时间复杂度:
O(n)
,每个元素最多被访问一次 - 空间复杂度:
O(1)
,只使用了常数额外空间
C++ 代码
|
|
Python 代码
|
|
Go 代码
|
|
JavaScript 代码
|
|
双指针:
for
遍历 nums
)i
,用于记录当前应当写入的位置。val
的元素,就写入当前位置 i
并将 i ++
O(n)
,每个元素最多被访问一次O(1)
,只使用了常数额外空间
|
|
|
|
|
|
|
|