力扣刷题:数组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;
}

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

相关推荐
a180079310805 分钟前
软件工程面试题(二十二)
java·面试·软件工程
RainbowSea8 分钟前
4. RabbitMQ 发布确认的配置详细说明
java·消息队列·rabbitmq
robin_suli19 分钟前
Spring事务的传播机制
android·java·spring
青云交21 分钟前
Java 大视界 -- Java 大数据在智能电网电力市场交易数据分析与策略制定中的关键作用(162)
java·大数据·数据分析·交易策略·智能电网·java 大数据·电力市场交易
m0Java门徒27 分钟前
Java 递归全解析:从原理到优化的实战指南
java·开发语言
uhakadotcom29 分钟前
Apache Airflow入门指南:数据管道的强大工具
算法·面试·github
云徒川36 分钟前
【设计模式】原型模式
java·设计模式·原型模式
跳跳糖炒酸奶1 小时前
第四章、Isaacsim在GUI中构建机器人(2):组装一个简单的机器人
人工智能·python·算法·ubuntu·机器人
张张张3121 小时前
4.2学习总结 Java:list系列集合
java·学习
KATA~1 小时前
解决MyBatis-Plus枚举映射错误:No enum constant问题
java·数据库·mybatis