【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个数的和

相关推荐
故事和你911 分钟前
洛谷-算法1-7-搜索3
数据结构·c++·算法·leetcode·动态规划
fmk102312 分钟前
FastAPI + LangChain Agent 从零入门学习笔记
学习·langchain·fastapi
爱编码的小八嘎12 分钟前
C语言完美演绎8-7
c语言
chipsense18 分钟前
霍尔电流传感器选型方法论再升级:从800V平台到TMR竞争的全场景决策树
算法·决策树·机器学习·闭环霍尔·tmr传感
CoderYanger33 分钟前
14届蓝桥杯省赛Java A 组Q1~Q3
java·开发语言·线性代数·算法·职场和发展·蓝桥杯
词元Max35 分钟前
Java 转 AI Agent 开发学习路线(2026年3月最新版)
java·人工智能·学习
星幻元宇VR1 小时前
VR互动平台|开启沉浸式体验新方式
科技·学习·安全·vr·虚拟现实
会编程的土豆2 小时前
【日常做题】 代码随想录(岛屿最大面积+寻宝)
数据结构·算法·图论
qqacj2 小时前
Spring Security 官网文档学习
java·学习·spring
阿洛学长2 小时前
汉洛塔结构思维
算法