算法实现之只出现一次的数字

算法篇—只出现一次的数字 文章目录1.只出现一次的数字Ⅰ2.只出现一次的数字Ⅱ 1.只出现一次的数字Ⅰ a. b.思路 🔸数组中的每一个数都与ret进行异或。 c.注意 🔸相同的数进行异或,结果为零。 🔸任何数与零进行异或,结果为本身。 d.代码 2.只出现一次的数字Ⅱ a. b.思路 ... 阅读详情

题目

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

示例 1:

输入: [2,2,1]
输出: 1

示例 2:

输入: [4,1,2,1,2]
输出: 4

解法

其实如果用HashMap等数据结构来解决,也是可以的,时间复杂度也是O(n,但是注意题目中说的是每个元素出现两次,那么可以利用异或的思想来解决,即相同为0,不同为1

public class Solution {

    public int singleNumber(int[] nums) {
        int result = 0;
        for (int i = 0; i < nums.length; i++) {
            result ^= nums[i];
        }
        return result;
    }

}
《Autosar_MCAL高阶配置》总目录_培训教程持续更新中... 阅读详情

相关推荐

因时机器人-灵巧手配置方案(Ubuntu18.04)

因时机器人-灵巧手配置方案(Ubuntu18.04)

CH_monsy的博客 3848

只出现一次的数字(三种情况)

在介绍只出现一次的数字之前,先介绍一下消失的数字这个题目,数组nums包含从0到n的所有整数,但其中缺了一个。请编写代码找出那个缺失的整数。你有办法在O(n)时间内完成吗?[3,0,1]28思路:该题要求在O(n)时间内完成,使用遍历方法的时间复杂度是O(n^2),不符合题目要求。假设数组int nums[]={0,1,2,3,4,5,6,7,9},中间缺了数字8,先使用num=0与数组中所有元素做异或运算,然后将运算的结果再与[0,N]中的元素挨个做异或运算,得到的结果就是那个消失的数字。

weixin_44902783的博客 1056

SCCM实战指南:从零搭建企业级Windows自动化部署平台

本文提供了一份详细的SCCM实战指南,手把手教你从零搭建企业级Windows自动化部署平台。内容涵盖环境规划、AD架构扩展、SQL Server配置、SCCM主站点安装,以及最终实现操作系统镜像的自动化部署,旨在帮助IT管理员彻底告别手动装机,实现高效、规范的Windows设备批量管理。

weixin_29251337的博客 638

算法位运算——只出现一次的数字系列

1.只出现一次的数字I 先看题目 给定一个非空整数数组,除了某个元素只出现一次以外,其余每个元素均出现两次。找出那个只出现了一次的元素。 方法一:map集合 看完题干,脑子第一反应就是用map来解决,数组中的元素作为key,出现的次数作为value。于是两三下就敲好代码,果然困难题我唯唯诺诺,简单题我重拳出击。 public int singleNumber(int[] nums) { Map<Integer, Integer> map = new HashMap<&

未见山的博客 737

【CVPR 2025】低光增强HVI论文精读与源码复现---part1 论文网络精读

【CVPR 2025】本文参考论文HVI: A New Color Space for Low-light Image Enhancement part1 在文章中对论文核心网络与原理展开详细解释 part2 对论文公开代码的arch网络与其他核心部分展开详细解释

BOB_BOB_BOB_的博客 3264

基于多物理参数数据融合和先进人工智能算法的锂电池热失控监测传感器

基于多物理参数数据融合和先进人工智能算法的锂电池热失控监测传感器是多种方案中的优选项!是一种快速、准确、可靠、应用广泛的传感方案!可有效监测锂离子电池热失控风险,保障化学能储能电站安全!

chicheng_danxin的博客 2412

算法题:只出现一次的数字

给定一个非空整数数组,除了某个元素只出现一次以外,其余每个元素均出现两次。找出那个只出现了一次的元素。 说明: 你的算法应该具有线性时间复杂度。 你可以不使用额外空间来实现吗? 示例 1: 输入: [2,2,1] 输出: 1 示例2: 输入: [4,1,2,1,2] 输出: 4 一开始想到的是用循环,双重循环遍历,每次取出一个数,然后拿它跟整个vector中所有数(除了自身比...

sindyra的博客 340

UDS诊断入门第一课:手把手教你玩转0x10会话控制服务(附ISO14229实战解析)

刚接触汽车电子诊断的工程师们,往往会被厚厚的ISO 14229标准文档和各种专业术语吓退。但就像学习编程要从"Hello World"开始一样,掌握UDS协议的最佳切入点就是0x10诊断会话控制服务。这个看似简单的服务,实际上是整个诊断系统的"钥匙"——它决定了ECU(电子控制单元)当前处于何种工作模式,直接影响着其他诊断服务的可用性。 在实际车辆诊断中,ECU默认处于DefaultSession模式,这种模式下许多高级诊断功能是被禁用的。想象一下你正在开发一个需要刷写ECU固件的工具,如果连最基本的会

weixin_30402343的博客 393

【LeetCode-面试算法经典-Java实现】【136-Single Number(只出现一次的数字)】

【136-Single Number(只出现一次的数字)】【LeetCode-面试算法经典-Java实现】【所有题目目录索引】原题  Given an array of integers, every element appears twice except for one. Find that single one.   Note:   Your algorithm should have a

https://github.com/Wang-Jun-Chao 3755

主流双目相机技术参数横向评测:从ZED到国产新锐

本文对主流双目相机技术参数进行了横向评测,涵盖ZED、Bumblebee等国际品牌及国产新锐产品。详细分析了分辨率、帧率、视场角等关键参数,并针对机器人导航、AR/VR交互、工业检测等场景提供选型建议。特别推荐ZED相机在科研领域的成熟应用,以及国产方案在长基线设计和主动双目技术上的创新突破。

weixin_33670786的博客 318

FISCO BCOS(八)——— 一键部署 WeBase

环境 版本 Java Oracle JDK 8 至 14 MySQL MySQL-5.6及以上 Python Python3.6及以上 PyMySQL 1、获取部署安装包: wget https://osp-1257653870.cos.ap-guangzhou.myqcloud.com/WeBASE/releases/download/v1.5.4/webase-deploy.zip 2、解压安装包: unzip webase-deploy.zip 3、进入目录: c...

林中有神君 3607

java算法——数组中只实现一次的数字

题目:一个整型数组里除了两个数字之外,其他的数字都出现了两次,找出这两个只出现一次的数字,要求时间复杂O(n),空间复杂度O(1)思路关键点:两个相同的数异或得0,0与任何数异或得其本身。 public class FindNums { int num1=0; int num2=0; public void findNumsAppearOnce(int data[],int l

679

【GameFramework框架内置模块】6、实体(Entity)

实体Entity就是一个实体的基本单元,类似于Unity的GameObject对象本体,然后这个本体上面附加其他各种各样组件,才能实现各种各样的功能。一般需要在游戏运行时动态加载的游戏对象,比如怪物、武器、子弹、特效,都需要给这个物体挂载一个实体Entity,这样的话就可以方便的对实例出来的对象进行管理。下面就来看一下如何使用吧。

优快云博客专家,Unity3D高级软件工程师,《Unity 3D从入门到实战》作者。 3137

数组中查找只出现一次的数字算法思路与实现

给定一个整数数组,其中恰好有一个数字只出现一次,而其他所有数字均出现两次。我们的目标是高效地找出这个只出现一次的数字。该问题要求算法具有线性时间复杂度和常数空间复杂度(即不使用额外的数组等数据结构)。利用异或运算的性质来解决“寻找只出现一次的数字”问题,是一种非常高效和优雅的算法。它避免了使用哈希表等需要额外空间的数据结构,在保证线性时间复杂度的同时,将空间消耗降到了最低。理解和掌握这种位运算技巧,对于解决类似的算法问题大有裨益。

learn1987的专栏 338

win10 跳过U8环境检测的IE WebControls.rar

win10 安装u8的时候 提示IE WebControls 不通过,这个工具可以欺骗u8的检查。 跳过U8环境检测的IE WebControls。提示导入失败后,重新检测通过。

ssm框架搭建

这个是一个在idea上成功跑起来的ssm框架项目,保存在这里方便以后使用直接下载

【算法-Java实现】寻找只出现一次的数字

【算法-Java实现】寻找只出现一次的数字 一.问题描述: 给定一个非空整数数组,除了某个元素只出现一次,其他元素都出现两次。寻找那个只出现一次的元素。 比如: 输入:[2,2,1];输出:1 输入:[1,2,2,3,4,3,4];输出:1 二.问题解答: 思路:异或运算 由于本题中元素只有出现一次和出现两次的情况,因此最优解就是对数组元素进行异或运算。 什么是异或运算? 简单点来说就是两个数不同,异或结果为1;两个数相同,异或结果为0。异或就是表示不同时为1,相同时为0. 异或运算的特点: 1.任何数和0

HKD的博客 1172

大中型超市收银系统(可直接运行)

光步前台收银系统系统功能:商品销售、商品退货、挂单、收银员权限、会员销售、单品取消、整单取消、商品查询、脱机销售、脱机数据上传,基本资料下载,开钱箱、小票打印、收款结算,支持多币种付款方式(现金、储值卡、礼券、微信等),支持多种促销。运行环境:.net 4.0登陆信息用户名:1001 密码:123456内置商品信息,商品编码可输入00001000 - 00010000,测试效果相关功能键F5 结算 F9挂单 F11商品查询 F8退货 Insert单品取消 Del整单取消 F12开钱箱F2 会员 Ctrl+Z退出系统 Home 锁屏 相关源码待公开

【算法-初级-数组】只出现一次的数字(JavaScript实现)

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

归子莫的博客 701

VC中sqlite的使用

在VC中对sqlite的使用,实现数据库大批数据的快速插入,读取数据库中的数据在ListCtrl中显示

只出现一次的数字,Java异或算法实现

/** * 只出现一次的数字 * 给定一个非空整数数组,除了某个元素只出现一次以外,其余每个元素均出现两次。找出那个只出现了一次的元素。 * 说明: * 你的算法应该具有线性时间复杂度。 你可以不使用额外空间来实现吗? * https://leetcode-cn.com/problems/single-number/ */ public class SingleNumber { public static int singleNumber(int[] nums){ fo.

我的梦境传说 201

算法题 只出现一次的数字 C++实现

算法题 只出现一次的数字 1 2 3位运算最常用在嵌入式开发中,熟练掌握位运算,可以在单片机中宛若游龙~

2501_90686778的博客 581

【LeetCode-面试算法经典-Java实现】【137-Single Number II(只字出一次的数字II)】

【137-Single Number II(只出现一次的数字II)】【LeetCode-面试算法经典-Java实现】【所有题目目录索引】原题  Given an array of integers, every element appears three times except for one. Find that single one.   Note:   Your algorithm sh

https://github.com/Wang-Jun-Chao 6457

LeetCode :初级算法_[数组]: 只出现一次的数字(C语言实现)

LeetCode :初级算法_[数组]: 只出现一次的数字 题目地址: https://leetcode-cn.com/explore/interview/card/top-interview-questions-easy/1/array/25/ 给定一个非空整数数组,除了某个元素只出现一次以外,其余每个元素均出现两次。找出那个只出现了一次的元素。 说明: 你的算法应该具有线性时间复杂度。...

Linux 1016

程序员面试100题(算法)之找出数组中两个只出现一次的数字(位运算实现)

// 程序员面试100题(算法)之找出数组中两个只出现一次的数字 #include "stdafx.h" #include using namespace std; bool Is1(int data, unsigned int location) { data = data >> location; return (data & 1); } int FindFirs

shichexixi的专栏 4986

【leetcode初级算法JS实现】6.只出现一次的数字

只出现一次的数字

未来可期 255

【LeetCode-面试算法经典-Java实现】【136-Single Number(仅仅出现一次的数字)】

【136-Single Number(仅仅出现一次的数字)】 【LeetCode-面试算法经典-Java实现】【全部题目文件夹索引】 原题   Given an array of integers, every element appears twice except for one. Find that single one.   Note:   Your ...

weixin_34383618的博客 119

leetcode算法题:只出现一次的数字(C语言实现)

题目描述: 给定一个非空整数数组,除了某个元素只出现一次以外,其余每个元素均出现两次。找出那个只出现了一次的元素。 说明: 你的算法应该具有线性时间复杂度。 你可以不使用额外空间来实现吗? 实例: 输入: [2,2,1] 输出: 1 输入: [4,1,2,1,2] 输出: 4 思路分析: 参考答案提供的思路采取异或的做法。首先要知道异或的知识点:1、任意一个数和0异或仍然为自己2、任意一个数和自己异或是0 3、满足交换律和结合律:a⊕b⊕a=(a⊕a)⊕b=0⊕b=ba ⊕ a = 0 另外: a ⊕

kingJamesbond的博客 289

D15.3 一个数组中只有两个数字是出现一次, 其他所有数字都出现了两次。 找出这两个只出现一次的数字,编程实现。

#include<stdio.h> #include<stdlib.h> void findnum(int *src,int n, int *pnum1, int *pnum2) { int i; int sum = 0; for (i = 0; i < n; i++) { sum ^= src[i]; } int pos; for (pos =...

canvasa的博客 117

找出数组中只出现一次/两次/三次的数字,而其他数字都出现偶数次

原题描述: 一个数组中有一个/两个/三个数字只出现一次,其他数字都出现了偶数次。请找出一个/两个/三个只出现一次的数字? 具体实现如下:(三个出现一次的数字,有些乱,待优化)三种,均已测试通过。 #include #include #include using namespace std; // find the three different number in

crazyer2010的专栏 4214
上一篇: 算法实现之反转字符串中的单词 III
下一篇: 算法实现之删除链表中的节点
handy周
handy周 领域专家: 操作系统技术领域 领域专家: 操作系统技术领域
博客等级 码龄14年 507粉丝 240原创
评论
成就一亿技术人!
拼手气红包6.0元
还能输入1000个字符
 
 条评论被折叠 查看
添加红包

请填写红包祝福语或标题

个

红包个数最小为10个

元

红包金额最低5元

当前余额3.43元 前往充值 >
需支付:10.00元
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付元
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值