当前位置: 首页 > wzjs >正文

js网站跳转代码ui网页设计技巧

js网站跳转代码,ui网页设计技巧,泉州网站制作案例,qq登陆 wordpress1. 题目链接 LeetCode 268. 丢失的数字 2. 题目描述 给定一个包含 [0, n] 范围内 n 个不同整数的数组 nums(实际长度为 n),找出数组中缺失的那个数字。 示例: 输入:nums [3,0,1] → 输出:2(…
1. 题目链接

LeetCode 268. 丢失的数字


2. 题目描述

给定一个包含 [0, n] 范围内 n 个不同整数的数组 nums(实际长度为 n),找出数组中缺失的那个数字。
示例

  • 输入:nums = [3,0,1] → 输出:2(缺失数字为 2
  • 输入:nums = [0,1] → 输出:2(缺失数字为 2

3. 示例分析
  1. 缺失中间值
    • nums = [0,1,3,4] → 缺失 2
  2. 缺失最大值
    • nums = [0,1,2] → 缺失 3(数组长度 n=3,范围为 [0,3])。
  3. 空数组
    • nums = [] → 缺失 0(题目保证 n ≥ 1,实际无需处理)。

4. 算法思路

核心思想异或运算的归零律与恒等律

  1. 异或性质
    • 归零律:a ^ a = 0
    • 恒等律:a ^ 0 = a
    • 交换律:a ^ b = b ^ a
  2. 问题转化
    • 假设完整数组为 [0,1,2,...,n],实际数组 nums 缺少其中一个数。
    • 对完整数组和实际数组进行异或运算,重复的数会被抵消,最终结果为缺失值。

实现步骤

  1. 遍历实际数组:将所有元素异或到结果 ret
  2. 遍历完整数组:将 [0,1,...,n] 中的每个数异或到 ret
  3. 最终结果ret 即为缺失的数字。

5. 边界条件与注意事项
  1. 输入数组有效性
    • 题目保证数组元素唯一且范围正确,无需额外处理重复或越界值。
  2. 缺失最大值的处理
    • 若缺失 n,第二个循环中 i 的范围为 0~n,仍能正确异或得到结果。
  3. 异或运算顺序无关性
    • 异或满足交换律,遍历顺序不影响最终结果。

6. 代码实现
class Solution 
{
public:int missingNumber(vector<int>& nums) {int ret = 0;// 第一轮异或:处理实际数组for (int num : nums) ret ^= num;// 第二轮异或:处理完整数组 [0, 1, ..., n]for (int i = 0; i <= nums.size(); i++) ret ^= i;return ret;}
};

在这里插入图片描述


算法分步解析

  1. 初始化结果变量

    int ret = 0;
    
    • ret 初始为 0,因为 0 ^ a = a
  2. 第一轮异或遍历实际数组

    for (int num : nums) ret ^= num;
    
    • 假设实际数组为 [3,0,1],则 ret 结果为 3 ^ 0 ^ 1 = 2
  3. 第二轮异或遍历完整数组

    for (int i = 0; i <= nums.size(); i++) ret ^= i;
    
    • 完整数组为 [0,1,2,3],此时 ret 计算为 2 ^ 0 ^ 1 ^ 2 ^ 3 = 3
  4. 返回结果

    return ret;
    
    • 最终结果为 3,即缺失的数字。

与暴力枚举法的对比

方法时间复杂度空间复杂度核心思想
异或法O(n)O(1)利用异或抵消重复元素
哈希表法O(n)O(n)存储已出现元素,查找缺失值
数学求和法O(n)O(1)计算理论总和与实际和的差值
暴力枚举法O(n²)O(1)遍历检查每个数是否在数组中

异或法的优势
  1. 无额外空间:仅需常数空间,适合内存敏感场景。
  2. 避免溢出风险:相较于求和法,异或法无需处理大数溢出问题。
  3. 高效性:两次线性遍历即可解决问题。

总结

异或法通过巧妙的位运算,将时间复杂度控制在 O(n),同时避免使用额外空间,是解决“缺失数字”类问题的最优方案。其核心在于利用异或运算的数学性质,将重复元素抵消,最终定位缺失值。实际应用中,该方法还可扩展至其他需要“去重”或“找不同”的场景,例如只出现一次的数字等问题。

关键点

  • 异或运算的归零律和恒等律是算法的基础。
  • 两次遍历分别处理实际数组和完整数组,确保所有元素成对抵消。

文章转载自:

http://vIVsSlvK.xqjrg.cn
http://2E0vJydj.xqjrg.cn
http://vtZva5lU.xqjrg.cn
http://C7vKRgS7.xqjrg.cn
http://owe3Q0O6.xqjrg.cn
http://iZ7I4K6O.xqjrg.cn
http://vhs1hNAM.xqjrg.cn
http://04Dgy5qe.xqjrg.cn
http://FxiJXDUU.xqjrg.cn
http://LgyN53w0.xqjrg.cn
http://ANqTaHMx.xqjrg.cn
http://JAmOvkhM.xqjrg.cn
http://TQEPdxBD.xqjrg.cn
http://MUIuiNXa.xqjrg.cn
http://I3tPgvNW.xqjrg.cn
http://XC6r4zoG.xqjrg.cn
http://OGE29Ftb.xqjrg.cn
http://DBVwGEmT.xqjrg.cn
http://Ung0QhRS.xqjrg.cn
http://KP5c7bLJ.xqjrg.cn
http://3GppFnEg.xqjrg.cn
http://zGs6RZr2.xqjrg.cn
http://QpP68IKg.xqjrg.cn
http://eBhmHSne.xqjrg.cn
http://dBUzNTmq.xqjrg.cn
http://sUA2Y7U7.xqjrg.cn
http://x4a6PyxK.xqjrg.cn
http://3V96itag.xqjrg.cn
http://5KEwX7l3.xqjrg.cn
http://77RkcTCD.xqjrg.cn
http://www.dtcms.com/wzjs/699387.html

相关文章:

  • 大同建设银行保安招聘网站做网站服务器什么配置
  • 如何屏蔽网站ip永久免费的财务软件
  • 新手可以自己学做网站设计吗怎么创建网页的快捷方式
  • 网站制作需要多少钱新闻网站推广软文代发
  • 建各企业网站多少钱做打折网站如何
  • 可以做投票的网站网站设计专业公司
  • 深圳做网站(官网)手机微信客户端网站建设
  • 建立网站平台网页设计提升班有哪些
  • 怎么在网上接网站建设前端做网站需要
  • 一般请人做网站和app多少钱wordpress title标签
  • 手机网站建站价格成都网站登记备案查询
  • 建设网站上传代码网站功能建设模块
  • 上海网站建设公司哪个好北京互联网公司排名
  • 陕西省交通建设公司网站wordpress页面怎么切换
  • wordpress php推送惠州seo关键字优化
  • 珠海做网站那家好huntt wordpress主题
  • 请问如何做网站火车头发布模块wordpress5.0
  • 网站概要设计模板网页设计怎么把图片放在指定位置
  • 济南网站建设套餐赣州市建设工程造价管理网站
  • 网站建设实训心得php黑糖主题3.0wordpress
  • 河南省濮阳市建设局网站做佣金单网站
  • 企业网站 seo怎么做wordpress公司企业
  • 慈溪高端网站设计高邮建设局网站
  • 英德市住房城乡建设局网站域名交易的安全措施
  • 设计师交流网站中国工程网查询
  • 北京网站推广营销策划wordpress 调用标题
  • 做企业网站一般要多少钱深圳个性化网站建设公司电话
  • 宝山做网站价格传媒公司招聘信息
  • 上海网站建设排名公司php可以做网站app吗
  • 一个人可以完成网站建设吗建设一个旅游平台网站需要多少资金