「 每日一练,快乐水题 」540. 有序数组中的单一元素
Posted 谁吃薄荷糖
tags:
篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了「 每日一练,快乐水题 」540. 有序数组中的单一元素相关的知识,希望对你有一定的参考价值。
✅力扣原题:
✅题目简述:
给你一个仅由整数组成的有序数组,其中每个元素都会出现两次,唯有一个数只会出现一次。
请你找出并返回只出现一次的那个数。
你设计的解决方案必须满足 O(log n) 时间复杂度和 O(1) 空间复杂度。
✅解题思路:
1.利用哈希表统计频次;
2.遍历哈希表,输出只只出现1次的数字;
3.over;
✅C++代码:
class Solution
public:
int singleNonDuplicate(vector<int>& nums)
unordered_map<int, int> umap;
for(auto & num : nums)
++umap[num];
for(auto it = umap.begin();it != umap.end(); it++)
if(it->second != 2)
return it->first;
return 0;
;
✅结果展示:
以上是关于「 每日一练,快乐水题 」540. 有序数组中的单一元素的主要内容,如果未能解决你的问题,请参考以下文章