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

建网站公司郑州手机主页哪个网站好

建网站公司郑州,手机主页哪个网站好,海文考研培训班2023价格表,美的网站建设水平swot分析目录 一、问题描述 二、解题思路 三、代码 四、复杂度分析 一、问题描述 给你一个 非空 整数数组 nums ,除了某个元素只出现一次以外,其余每个元素均出现两次。找出那个只出现了一次的元素。 你必须设计并实现线性时间复杂度的算法来解决此问题&…

目录

一、问题描述

二、解题思路

三、代码

四、复杂度分析


一、问题描述

给你一个 非空 整数数组 nums ,除了某个元素只出现一次以外,其余每个元素均出现两次。找出那个只出现了一次的元素。

你必须设计并实现线性时间复杂度的算法来解决此问题,且该算法只使用常量额外空间。

二、解题思路

异或 XOR 的几个性质:

  1. a ^ a = 0(任何数和自己异或为0)

  2. a ^ 0 = a(任何数和0异或还是它本身)

  3. 异或满足 交换律结合律a ^ b ^ c = a ^ (b ^ c)

所以如果一个数组中:

  • 所有元素都出现 两次,只有一个元素出现 一次

  • 那么我们把数组里所有数字都异或一遍,成对的数会变成 0,最终结果就是那个 只出现一次的数

示例:

 

cpp

复制编辑

nums = [2, 3, 2, 3, 5]

这里:

  • 2 出现了两次

  • 3 出现了两次

  • 只有 5 出现了一次,结果应该返回 5


🚀 为什么用异或?

🔢 异或的核心特点:
操作结果含义
a ^ a0自己跟自己异或等于 0
a ^ 0a任何数与 0 异或还是它自己
异或满足 交换律结合律a ^ b ^ a = (a ^ a) ^ b = 0 ^ b = b顺序不重要


✅ 用异或解这道题的逻辑:

假设你从左到右,遍历 nums,把所有数都异或到一个变量 result 中。

由于所有数都出现两次,它们“配对异或”之后变成了 0只有那个“只出现一次”的数还剩下来!


🧮 举个完整例子:

nums = [4, 1, 2, 1, 2]

我们用异或来操作:

步骤当前数字异或结果 (result)
初始-0(初始值)
140 ^ 4 = 4
214 ^ 1 = 5
325 ^ 2 = 7
417 ^ 1 = 6
526 ^ 2 = 4

最后结果是 4,就是我们想找的答案!

三、代码

class Solution {
public:int singleNumber(vector<int>& nums) {int result = 0; // 初始结果设为 0// 遍历数组中的所有元素for (int num : nums) {result ^= num; // 把每个数和 result 做异或}return result; // 最后剩下的就是只出现一次的数}
};

四、复杂度分析

项目复杂度说明
⏱ 时间复杂度O(n)只遍历一次数组
🧠 空间复杂度O(1)只用一个整型变量 result

五、小结

  • 什么异或能解决这个问题?
    因为成对的数字会变成 0,只出现一次的那个数字会被留下。

  • 为什么时间是 O(n)?
    因为你只遍历了一次数组。

  • 为什么空间是 O(1)?
    只用了一个整型变量,不管数组多大。

http://www.dtcms.com/wzjs/816912.html

相关文章:

  • 怎样免费做网站湖北权威的百度推广
  • 南通高端网站设计建设温州网站制作优化
  • 网站右下角广告展示代码seo教程网站优化
  • 网站建设和管理是教什么科目北京知名网站设计公司
  • 游戏ui素材网站深圳建设工程信息网查询系统
  • 建设景区网站的目的中国互联网协会成立
  • 我的个人网站怎么做建站行业新闻
  • 网站源代码生成网站医院网站建设方案详细
  • 南昌企业网站建设公司哪个好网站设置路由器
  • 为什么我网站打不开wordpress电子书下载
  • 制作专业网站创意装饰
  • 中国现代公路建设有限公司网站常平网站建设
  • 网站建设这个职业是什么响应式网站尺寸节点
  • 聊城网站建设费用短视频推广计划
  • 群晖ds218+做网站wordpress企业营销主题
  • 一级a做爰电影免费观看网站长沙门户网站建设公司
  • 易进网站建设推广什么是vi设计?
  • 网站手机客户端生成物流网站建设流程图
  • 做网站用什么环境手机怎么免费建设网站
  • 网站开发的初始密码番禺做网站报价
  • 高端网站制作哪家好江门营销型网站建设
  • 简网站开发平台旅游网站模块分类
  • 上海建设工程安全质量监督站网站怎么做点击文字进入的网站
  • 网站建设推广公司哪家权威邢台企业做网站报价
  • 如何制作手机网页最简单的方法蚌埠seo
  • 做废铝的关注哪个网站好做网站设计电脑需要什么配置
  • 制作网页网站小说教程shopex网站
  • 网站顶部设计泰安网页设计公司
  • 网站开发软件开发培训产品通过网站做营销
  • 专业网站制作公司招聘wordpress个人博客