力扣刷题:数组OJ篇(上)

大家好,这里是小编的博客频道

小编的博客:就爱学编程
很高兴在CSDN这个大家庭与大家相识,希望能在这里与大家共同进步,共同收获更好的自己!!!

目录


废话不多说,我们直接看题。

1.消失的数字

(1)题目描述


(2)解题思路

按位异或

代码实现:

c 复制代码
int missingNumber(int* nums, int numsSize) {
    int sum = 0;
    for(int i = 0; i < numsSize; i++){
        sum ^= nums[i];
    }
    for(int i = 0; i <= numsSize; i++){
        sum ^= i;
    }
    return sum;
}

2.删除数组中的重复项

(1)题目描述



(2)解题思路

双指针

代码实现:

c 复制代码
int removeDuplicates(int* nums, int numsSize) {
    if(numsSize == 0) return 0;
    int fast = 0, slow = 0;
    while(fast < numsSize - 1){
        
        if(nums[fast] != nums[fast + 1]){
            nums[++slow] = nums[++fast];
        }
        else{
            ++fast;
        }
    }
    //实际中返回值是slow还是slow+1代值即可验证
    return slow + 1;
}

3.移除元素

(1)题目描述


(2)解题思路

双指针

代码实现:

c 复制代码
int removeElement(int* nums, int numsSize, int val) {
    //确保快指针全部遍历一次即可
    int slow = 0, fast = 0;
    while(fast < numsSize){
        if(nums[fast] != val){
            nums[slow++] = nums[fast]; 
        }
        ++fast;
    }
    return slow;
}

快乐的时光总是短暂,咱们下篇博文再见啦!!!如果小编的文章会对你有帮助的话不要忘了,记得给小编点赞、收藏支持一下,在此非常感谢!!!

相关推荐
方也_arkling1 小时前
【Java-Day08】static / final / 枚举
java·开发语言
橙淮1 小时前
Spring Bean作用域与生命周期全解析
java·spring
Chengbei112 小时前
一站式源码安全检测工具、云安全 / APP / 小程序源码敏感信息递归多层目录扫描AK、JWT、手机号、身份证等敏感信息
java·开发语言·安全·web安全·网络安全·系统安全·安全架构
llz_1122 小时前
web-第一次课后作业
java·开发语言·idea
kkeeper~2 小时前
0基础C语言积跬步之数据在内存中的存储
c语言·数据结构·算法
秋92 小时前
Java项目运行5天左右自动宕机:系统性定位与解决方案
java·开发语言·python
小江的记录本2 小时前
【JVM虚拟机】垃圾回收GC:垃圾收集器:CMS:核心原理、回收流程、优缺点、废弃原因(附《思维导图》+《面试高频考点清单》)
java·jvm·后端·python·spring·面试·maven
DIY源码阁2 小时前
JavaSwing学生成绩管理系统 - MySQL版
java·数据库·mysql·eclipse
wabs6663 小时前
关于贪心算法的一些自我总结【力扣45.跳跃游戏II】【灵感来源:代码随想录】
算法·贪心算法·复盘
2401_876964133 小时前
【湖北专升本】2026湖北专升本真题PDF+备考资料汇总
数据结构·人工智能·经验分享·深度学习·算法·计算机视觉