本题考验快慢指针基本功,代码思想较为简单,删除数组元素底层就是覆盖原有元素的空间,暴力算法两层for循环也可以解决类似问题,但是需要平方的复杂度,为了对此进行优化,本题建议使用快慢指针方法。这也是较为基础的一个算法思想,即设置一个快慢指针对数组或其他数据结构遍历,快指针不停的移动,满指针只有满足一定的条件才会移动。经过一段遍历以后显示出两个指针的快慢差距。
本题就是在一次遍历过程中快指针不停移动,满指针在快指针指向值不等于删除元素时移动。动态图如下(图源自力扣代码随想录大佬)
本题考验快慢指针基本功,代码思想较为简单,删除数组元素底层就是覆盖原有元素的空间,暴力算法两层for循环也可以解决类似问题,但是需要平方的复杂度,为了对此进行优化,本题建议使用快慢指针方法。这也是较为基础的一个算法思想,即设置一个快慢指针对数组或其他数据结构遍历,快指针不停的移动,满指针只有满足一定的条件才会移动。经过一段遍历以后显示出两个指针的快慢差距。
本题就是在一次遍历过程中快指针不停移动,满指针在快指针指向值不等于删除元素时移动。动态图如下(图源自力扣代码随想录大佬)