【Leetcode】【消失的数字】【C语言】

方法一:按位异或(找单身狗)

我们知道:按位异或^操作原则:相同为零,相异为一

所以 0^a=a a ^a=0 a ^b=b ^a

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

tem1 ^ tem2时,相同的元素互相按位异或都会变成0,而消失的数字就会显现出来。

方法二:求和相减

c 复制代码
int missingNumber(int* nums, int numsSize){
    int sum1=(1+numsSize)*numsSize/2;
    int sum2=0;
    for(int i=0;i<numsSize;i++)
    {
        sum2=sum2+nums[i];
    }
    return sum1-sum2;

等差数列求和公式求前n个数的和

相关推荐
好吃的肘子5 分钟前
ElasticSearch进阶
大数据·开发语言·分布式·算法·elasticsearch·kafka·jenkins
xiaohanbao0915 分钟前
day26 Python 自定义函数
开发语言·python·学习·机器学习·信息可视化·numpy
狮智先生17 分钟前
【学习笔记】点云自动化聚类简要总结
笔记·学习·自动化
CIb0la20 分钟前
数据可视化
程序人生·算法·信息可视化
czxyvX23 分钟前
023-C语言预处理详解
c语言
袁气满满~_~25 分钟前
LeetCode:617、合并二叉树
算法·leetcode·二叉树
写个博客25 分钟前
代码随想录算法训练营第四十一天
算法
像风一样自由202031 分钟前
算法模型部署后_python脚本API测试指南-记录3
python·算法·支持向量机
TO ENFJ37 分钟前
day 17 无监督学习之聚类算法
学习·算法·聚类
GIS小天1 小时前
AI预测3D新模型百十个定位预测+胆码预测+去和尾2025年5月15日第78弹
人工智能·算法·机器学习·彩票