137:只出现一次的数字 II

This commit is contained in:
huangge1199@hotmail.com 2021-04-30 00:23:00 +08:00
parent f4b049d5c8
commit a3bcde8087
3 changed files with 99 additions and 1 deletions

View File

@ -0,0 +1,66 @@
//给你一个整数数组 nums 除某个元素仅出现 一次 其余每个元素都恰出现 三次 请你找出并返回那个只出现了一次的元素
//
//
//
// 示例 1
//
//
//输入nums = [2,2,3,2]
//输出3
//
//
// 示例 2
//
//
//输入nums = [0,1,0,1,0,1,99]
//输出99
//
//
//
//
// 提示
//
//
// 1 <= nums.length <= 3 * 104
// -231 <= nums[i] <= 231 - 1
// nums 除某个元素仅出现 一次 其余每个元素都恰出现 三次
//
//
//
//
// 进阶你的算法应该具有线性时间复杂度 你可以不使用额外空间来实现吗
// Related Topics 位运算
// 👍 565 👎 0
package leetcode.editor.cn;
import lombok.val;
import java.util.HashMap;
import java.util.Map;
//137:只出现一次的数字 II
public class SingleNumberIi{
public static void main(String[] args) {
//测试代码
Solution solution = new SingleNumberIi().new Solution();
}
//力扣代码
//leetcode submit region begin(Prohibit modification and deletion)
class Solution {
public int singleNumber(int[] nums) {
Map<Integer,Integer> map = new HashMap<>();
for (int num :nums){
map.put(num,map.getOrDefault(num,0)+1);
}
for (int num:map.keySet()){
if(map.get(num)==1){
return num;
}
}
return 0;
}
}
//leetcode submit region end(Prohibit modification and deletion)
}

View File

@ -0,0 +1,32 @@
<p>给你一个整数数组 <code>nums</code> ,除某个元素仅出现 <strong>一次</strong> 外,其余每个元素都恰出现 <strong>三次 。</strong>请你找出并返回那个只出现了一次的元素。</p>
<p> </p>
<p><strong>示例 1</strong></p>
<pre>
<strong>输入:</strong>nums = [2,2,3,2]
<strong>输出:</strong>3
</pre>
<p><strong>示例 2</strong></p>
<pre>
<strong>输入:</strong>nums = [0,1,0,1,0,1,99]
<strong>输出:</strong>99
</pre>
<p> </p>
<p><strong>提示:</strong></p>
<ul>
<li><code>1 <= nums.length <= 3 * 10<sup>4</sup></code></li>
<li><code>-2<sup>31</sup> <= nums[i] <= 2<sup>31</sup> - 1</code></li>
<li><code>nums</code> 中,除某个元素仅出现 <strong>一次</strong> 外,其余每个元素都恰出现 <strong>三次</strong></li>
</ul>
<p> </p>
<p><strong>进阶:</strong>你的算法应该具有线性时间复杂度。 你可以不使用额外空间来实现吗?</p>
<div><div>Related Topics</div><div><li>位运算</li></div></div>\n<div><li>👍 565</li><li>👎 0</li></div>

File diff suppressed because one or more lines are too long