首页 > 其他分享 >力扣27 移除元素

力扣27 移除元素

时间:2022-11-06 14:16:18浏览次数:75  
标签:27 val nums int 元素 力扣 数组 移除

移除元素 题目:

给你一个数组 nums 和一个值 val,你需要 原地 移除所有数值等于 val 的元素,并返回移除后数组的新长度。

不要使用额外的数组空间,你必须仅使用 O(1) 额外空间并 原地 修改输入数组

元素的顺序可以改变。你不需要考虑数组中超出新长度后面的元素。

 

数组理论基础: 数组(Array)是有序的元素序列。
1 2 3 4 5
删除元素3后,真实并非
1 2   4 5

而是

1 2 4 5  
  库函数使用: erase 时间复杂度O(n) 暴力实现:时间O(n2)  空间O(1) class Solution {     public int removeElement(int[] nums, int val) {         int length=nums.length;         for(int i=0;i<length;i++){             if(nums[i]==val){                 for(int j=i+1;j<length;j++){                     nums[j-1]=nums[j];                 }                 i--;                 length--;//数组大小减1             }         }         return length;     } } 双指针实现:时间O(n) 空间O(1) 快指针:寻找新数组的元素 ,新数组就是不含有目标元素的数组 慢指针:指向新数组下标的位置 class Solution {     public int removeElement(int[] nums, int val) {         int slow=0;         for(int fast=0;fast<nums.length;fast++){             if(nums[fast]!=val){                 nums[slow]=nums[fast];                 slow++;             }         }         return slow;     } }

 

 

标签:27,val,nums,int,元素,力扣,数组,移除
From: https://www.cnblogs.com/cjhtxdy/p/16862446.html

相关文章

  • 【题解】洛谷P2725 [USACO3.1]邮票 Stamps
    从n种邮票中选出不超过k张邮票,使选出来的邮票可以表示1~m之间(含)的所有数。每张邮票在不超过k的前提下,都可以使用无数次,因此可以将问题看成一个完全背包问题。n种邮票就是n......
  • ABC276
    ABC276tasks\(\color{Green}{★}\)表示赛时做出。\(\color{Yellow}{★}\)表示赛后已补。\(\color{Red}{★}\)表示\(\text{Tobesolved}\)。Contestrk:708th......
  • AtCoder Beginner Contest 276
    今天来讲解一下AtCoderBeginnerContest276 C和D传送地址:https://atcoder.jp/contests/abc276一. C-PreviousPermutation题目大意:给你一个有数字1~n组成的序列......
  • AtCoder Beginner Contest 276
    咕咕咕咕。E-RoundTrip如果存在某个点双满足这个点双包含起点且点双大小大于\(4\)则有解。F-DoubleChance考虑不断在之前的基础上在末尾添加一个数,每次更新期......
  • AtCoder Beginner Contest 276 A~G 题解
    今天凌晨CFD题差一句判断AC,晚上ABCG题把插板法和快速幂搞混差点AC。事不过三,再这样一次我直接紫砂。太简单的题就不放翻译和代码了。(事实上这场A-E都是大水题......
  • 【atcoder abc276 】(a* 搜索)
    importjava.io.BufferedReader;importjava.io.IOException;importjava.io.InputStreamReader;importjava.util.*;/****@autho......
  • 27、视频功能(全)
    视频功能一、发布视频数据库表结构{"_id":ObjectId("5e82dd6164019531fc471ff0"),"vid":NumberLong("100001"),"userId":NumberLong("3"),"picU......
  • 力扣704 二分查找
    二分查找二分查找概述:BinarySearch,也叫折半查找。折半查找要求线性表必须采用顺序存储结构,而且表中元素按关键字有序排列。 二分查找原理:首先,假设表中元素......
  • P8627
    题目描述题目描述很简单,一共\(n\)瓶饮料,每\(3\)瓶饮料的瓶盖可以再换\(1\)瓶新的饮料,问最后一共喝了几瓶饮料?题意分析此题一共有\(3\)种做法,接下来我们一个一个......
  • ABC 273 ABCD
    https://atcoder.jp/contests/abc273A-ARecursiveFunction#include<bits/stdc++.h>usingnamespacestd;typedeflonglongLL;typedefpair<LL,LL>PII;constL......