從排序數組中刪除重複項

題目連接

從排序數組中刪除重複項數組

解題思路:

迭代數組,判斷下一個元素是否與當前元素相同,若是相同則刪除當前元素。spa

代碼

PHP版本

class Solution {

    /** * @param Integer[] $nums * @return Integer */
    function removeDuplicates(&$nums) {
        $size = sizeof($nums);// 防止數組越界
        foreach($nums as $key => $item){
            if($key + 1 <= $size) {
                if($nums[$key] === $nums[$key + 1]){
                    unset($nums[$key]);
                }
            }
        }
        return count($nums);
    }
}
複製代碼

語言坑點:code

  1. PHP使用for循環時unset掉元素不重置下標,數組下標保持原狀,因此有可能漏掉判斷元素。
  2. PHP判斷是否相等時會將NULL 與 0相等,必須連類型一塊兒判斷。
相關文章
相關標籤/搜索