[打卡8:leetcode26. 删除有序数组中的重复项] |刷题打卡

274 阅读1分钟

掘金团队号上线,助你 Offer 临门! 点击 查看详情

前言

第一次参加掘金打卡活动,别的不说 主要是奔着奖励来的。4.12开始为了达到14题小目标 冲冲冲!!!这是第8题。

image.png

题目描述

题目链接:删除有序数组中的重复项

题目描述我用截图leetcode的为主,所以题目如下图

image.png

思路分析

题目解析:一开始我在想这里就是一个简单数组去重 不是很快嘛

image.png 提交发现错误了 image.png 看来要重新审题了

1.给你一个有序数组 nums ,请你 原地 删除重复出现的元素,使每个元素 只出现一次 ,返回删除后数组的新长度。 看见这句话 有没有熟悉的感觉js的splice

image.png 2.nums 已按升序排列 说明不是乱序的

那就用最简单的遍历数组 然后用splice去删除重复项目

试一下: image.png 成功通过了

AC 代码

/**
 * @param {number[]} nums
 * @return {number}
 */
var removeDuplicates = function(nums) {
  if(nums.length===0){
      return 0
   }
   for(let i = 0; i < nums.length; i++) {
        if(nums[i] === nums[i+1]) {
            nums.splice(i, 1)
            i = i - 1
        }
    }
    return nums.length
};

总结

坚持就是胜利。第8题算法完成,坚持就是胜利!!!

       ↓↓↓

算法系列链接

       ↑↑↑

这里可以点!这里可以点!这里可以点!