题目描述

Given an array of integers, every element appears twice except for one. Find that single one.
Note:
Your algorithm should have a linear runtime complexity. Could you implement it without using extra memory?

解析:该题目暴力求解当然是可以通过的,但是不满足题目的要求,题目要求时间复杂度为O(n)。

代码一:暴力求解,不建议

import java.util.*;
public class Solution {public int singleNumber(int[] A) {List<Integer> list = new ArrayList<>();for(int i:A){list.add(i);}Set<Integer> set = new HashSet<>(list);for(int i:set){int temp =i;int count=0;for(int j:A){if(j==i){count++;}}if(count==1){return temp;}}return -1;}
}

代码二:利用异或的计算特点。
1)相同的数异或为0,例如 6^6=0;
2)0异或不为0的数为不为0的数,例如:0^5=5

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

《leetcode》single-number相关推荐

  1. 【?异或】LeetCode 260. Single Number III

    LeetCode 260. Single Number III Solution1: 博客转载自:http://www.cnblogs.com/grandyang/p/4741122.html 这道题 ...

  2. 【异或】LeetCode 137. Single Number II

    LeetCode 137. Single Number II Solution1:不会做,抄的 博客转载自:http://www.cnblogs.com/grandyang/p/4263927.htm ...

  3. 【异或】LeetCode 136. Single Number

    LeetCode 136. Single Number Solution1:我的答案 还好异或的性质没记错,还好,还好 class Solution { public:int singleNumber ...

  4. [勇者闯LeetCode] 136. Single Number

    [勇者闯LeetCode] 136. Single Number Description Given an array of integers, every element appears twice ...

  5. LeetCode 137. Single Number II--三次异或消除相同的数--C++,Python解法

    题目地址:Single Number II - LeetCode Given a non-empty array of integers, every element appears three ti ...

  6. 《LeetCode》数据结构入门板块

    文章目录 <LeetCode题>数据结构入门板块 第1天 数组 217.存在重复元素[简单,哈希表] 53.最大子序和[简单,动态规划,贪心] 第2天 数组 1.两数之和[简单,哈希表] ...

  7. Leetcode 137. Single Number II JAVA语言

    1 2 3 Given an array of integers, every element appears three times except for one, which appears ex ...

  8. leetcode 260. Single Number III | 260. 只出现一次的数字 III(位运算:分组异或)

    题目 https://leetcode.com/problems/single-number-iii/ 题解:分组异或 参考1:讨论区题解 you know you can eliminate dou ...

  9. Leetcode 136 Single Number 仅出现一次的数字

    原题地址 https://leetcode.com/problems/single-number/ 题目描述 Given an array of integers, every element app ...

  10. LeetCode 136. Single Number【哈希表/位运算/数学】简单

    本文属于「征服LeetCode」系列文章之一,这一系列正式开始于2021/08/12.由于LeetCode上部分题目有锁,本系列将至少持续到刷完所有无锁题之日为止:由于LeetCode还在不断地创建新 ...

最新文章

  1. embedding层和全连接层的区别是什么 一般说embedding层,实现方式就是一个没有bias的fc层
  2. 【TCP/IP详解 卷一:协议】第十二章 广播和多播
  3. 创建型模式之Builder模式
  4. iOS WKWebView ios9以上版本配置 与 设置UserAgent(用户代理), 解决点击web, 客户端接收不到web事件问题...
  5. DPVS_DPVS配置说明
  6. MyBatis和hibernate本质区别与应用场景
  7. 如何在移动端复制到剪切板
  8. 计算机如何去除桌面名称阴影,电脑桌面图标有阴影怎么去掉 电脑桌面图标阴影去掉方法【图文】...
  9. [Java基础]字符流中的编码解码问题
  10. 掘金浏览器插件安装图文教程
  11. qt下QString转换为const char*字符串
  12. SSD 因 NCQ hang,failed command: WRITE FPDMA QUEUED / tag 28 ncq 4096 out
  13. 超全面整理,Selenium 八大元素定位方式,(建议收藏反复使用)
  14. 关于html中利用jQuery选择子节点方法总结——待续
  15. 今天我们开通知识星球了~
  16. 在matlab中配置凸优化所需的求解器cvx、mosek之避雷
  17. dw超链接标签_使用Dreamweaver制作网页超链接的详细图文教程--系统之家
  18. 怎样玩魔方,魔方口诀,魔方玩法
  19. 解决:ERROR: Cannot uninstall ‘certifi‘. It is a distutils installed project and thus we cannot accurat
  20. 红米6A刷LineageOS17.1

热门文章

  1. 【题意+推导讲解】1031 Hello World for U (20 分)_15行代码AC
  2. 22行代码AC_Prime Number Aizu - 0009(素数筛)(解题报告)
  3. 蓝桥杯 试题 基础练习 特殊回文数——16行代码AC
  4. Python数据结构学习笔记——栈
  5. 魅族升级android p,高通宣布:这些手机将第一时间升级Android P!
  6. mysql ddl 语法解析工具_sharding-sphere之语法解析器
  7. 吉林大学计算机科学与技术学院王欣,应用改进迭代最近点方法的点云数据配准...
  8. MyEclipse里更改字体大小和快捷建的设置
  9. php 特殊符号处理,处理特殊符号的方法-php技巧
  10. java new的是构造函数_Java构造函数