删除已经排好序的一维数组中的重复元素,要求时间复杂度为o(n)
方法:使用两个指针,指针front指向当前已经唯一化的最后一个位置,指针after向后遍历需要唯一化的元素,保证front之前的所有元素都始终是唯一的。
当front与after指向的值相同时,after向后移动,当不同时after值赋给front,且front也向后移动。
代码如下:
1 |
|
删除已经排好序的一维数组中的重复元素,要求时间复杂度为o(n)
方法:使用两个指针,指针front指向当前已经唯一化的最后一个位置,指针after向后遍历需要唯一化的元素,保证front之前的所有元素都始终是唯一的。
当front与after指向的值相同时,after向后移动,当不同时after值赋给front,且front也向后移动。
代码如下:
1 | #include <iostream> |
Welcome to my other publishing channels