leetcode136 只出现一次的数字
给定一个非空整数数组,除了某个元素只出现一次以外,其余每个元素均出现两次。找出那个只出现了一次的元素。
说明:
你的算法应该具有线性时间复杂度。 你可以不使用额外空间来实现吗?
示例 1:
输入: [2,2,1]
输出: 1
示例 2:
输入: [4,1,2,1,2]
输出: 4
思路:拿map,set,都不符合要求。
map:
class Solution {public int singleNumber(int[] nums) {Map<Integer, Integer> map = new HashMap<>();for (Integer i : nums) {Integer count = map.get(i);count = count == null ? 1 : ++count;map.put(i, count);}for (Integer i : map.keySet()) {Integer count = map.get(i);if (count == 1) {return i;}}return -1; // can't find it.}
}
我们知道什么数字和自己异或,都等于0.
什么数字和0异或,都等于它本身。
所以全部异或一遍,答案就是那个出现一次的数字。
class Solution {public int singleNumber(int[] nums) {int ans = 0;for(int i :nums)ans ^= i;return ans;}
}
leetcode136 只出现一次的数字相关推荐
- leetcode-136. 只出现一次的数字解法
给定一个非空整数数组,除了某个元素只出现一次以外,其余每个元素均出现两次.找出那个只出现了一次的元素. 说明: 你的算法应该具有线性时间复杂度. 你可以不使用额外空间来实现吗? 示例 1: 输入: [ ...
- C练题笔记之:Leetcode-136. 只出现一次的数字
题目: 给定一个非空整数数组,除了某个元素只出现一次以外,其余每个元素均出现两次.找出那个只出现了一次的元素. 说明: 你的算法应该具有线性时间复杂度. 你可以不使用额外空间来实现吗? 示例 1: 输 ...
- Leetcode-136. 只出现一次的数字(python3)
给定一个非空整数数组,除了某个元素只出现一次以外,其余每个元素均出现两次.找出那个只出现了一次的元素. 说明: 你的算法应该具有线性时间复杂度. 你可以不使用额外空间来实现吗? 示例 1: 输入: [ ...
- Leetcode--136. 只出现一次的数字
给定一个按照升序排列的整数数组 nums,和一个目标值 target.找出给定目标值在数组中的开始位置和结束位置. 你的算法时间复杂度必须是 O(log n) 级别. 如果数组中不存在目标值,返回 [ ...
- LeetCode-136. 只出现一次的数字(java)
一.前言:
- 【leetcode】只出现一次的数字(位运算)
LeetCode136:只出现一次的数字 给定一个非空整数数组,除了某个元素只出现一次以外,其余每个元素均出现两次.找出那个只出现了一次的元素. 解题思路: 这里可以使用异或运算.即两个相同的数字异或 ...
- 136. 只出现一次的数字(关于异或的使用)
136. 只出现一次的数字 给定一个非空整数数组,除了某个元素只出现一次以外,其余每个元素均出现两次.找出那个只出现了一次的元素. 说明: 你的算法应该具有线性时间复杂度. 你可以不使用额外空间来实现 ...
- 算法题:“找出单身狗”--找出一个数组中只出现一次的数字
题目:一个数组中只有两个数字是出现一次,其他所有数字都出现了两次. 编写一个函数找出这两个只出现一次的数字. 解题过程以及思路:(思路在代码中以注释形式给出) //一个数组中只有两个数字是出现一次,其 ...
- 剑指offer:数组中只出现一次的数字
题目描述 一个整型数组里除了两个数字之外,其他的数字都出现了两次.请写程序找出这两个只出现一次的数字. 解题思路 用容器存次数. class Solution { public:void FindNu ...
最新文章
- [YTU]_2769( 结构体--成绩统计)
- java class类文件结构
- linux ubuntu/deepin与Windows时间不同步解决办法(双系统)
- 贝叶斯算法对文本进行分类实例
- java 防渗透_「java、工程师工作经验怎么写」-看准网
- 论文浅尝 | 用可微的逻辑规则学习完成知识库推理
- 几张一模一样的照片_两张一模一样的照片看起来却不一样!什么鬼?
- 劳荣枝潜逃 23 年落网,多亏了它!
- 9102年,曝光这几个高质量的公众号,年薪7位数!
- 深入理解strcpy,strncpy
- SublimeLinter 3中使用jshint
- !!obj与JavaScript中!!的作用
- 云计算是什么?云计算的发展趋势是什么?
- win7触摸板怎么关闭_笔记本触控板怎么关闭 笔记本触控板关闭方法【详解】
- 2020图灵奖颁给“龙书”两位作者!合作数十年,他们让计算机读懂码农代码
- Biological Psychiatry:亚属连接预测经颅磁刺激位点抗抑郁疗效
- 感觉编程还是需要逐渐熟练的技术工种吧,分几个维度来描述。
- win7 电脑MAC地址修改
- VFP开发微信、支付宝扫码支付
- Laravel Excel实现Excel/CSV文件导入导出的功能详解(合并单元格,设置单元格样式)
热门文章
- Linux logo和屏幕光标
- 【转】深度理解C# 的执行原理
- 【转】3.1(译)构建Async同步基元,Part 1 AsyncManualResetEvent
- 谈谈你对闭包的理解?
- 15原型模式(Prototype)
- eclipse java maven_java – 非常轻量级的Eclipse-Maven集成 – 仅...
- QSplitter设置宽高比例的正确方法
- 记录一次SQL优化,增加索引,随便写的当笔记了
- 【HDU - 2444】The Accomodation of Students(二分图判断 + 匈牙利算法求最大匹配)
- 呆在实验室到深夜的小随笔