当前位置:网站首页>哈希表应用:只出现一次的数字
哈希表应用:只出现一次的数字
2022-08-10 15:20:00 【^o^叶子^0^】
目录
题目描述
给定一个非空整数数组,除了某个元素只出现一次以外,其余每个元素均出现两次。找出那个只出现了一次的元素。
说明:
你的算法应该具有线性时间复杂度。 你可以不使用额外空间来实现吗?
示例 1:
输入: [2,2,1]
输出: 1
示例 2:
输入: [4,1,2,1,2]
输出: 4
AC代码
class Solution {
public:
int singleNumber(vector<int>& nums) {
unordered_map<int,int>hashmap;
for(auto & it:nums)++hashmap[it];
for(auto & [key,value]:hashmap)if(value==1)return key;
return 0;
}
};解析
很像python的字典。
unordered_map的内部实现了一个哈希表,有键和值对应,键不会重复,就像字典一样,页数与内容,用来解决这道题实在是太方便了,用切片提取vector的元素,把它作为哈希表的键,出现次数作为对应的值,哈希表还会自己新增进去,都不需要判断有没有,自己就会做判断,装完哈希表之后遍历一下找出出现次数为1的就可以了。
话说C++的切片,还能提取多个元素,我到目前为止,只知道在C++中,字符串、set、vector,以及今天学的unordered_map可以切片,不过,话说回来,哈希表是真的巨好用@[email protected]
边栏推荐
- Opencv 图像超像素分割(SLIC、SEEDS、LSC)
- MySQL Principle and Optimization: Update Optimization
- JVM学习——2——内存加载过程(类加载器)
- APP automation testing with Uiautomator2
- 网络初识(二)
- A test tool for ABAP Development Tool custom service endpoint
- photoshop入门教程
- web安全入门-Kill Chain测试流程
- Zotero 开源文献管理工具
- FP6378AS5CTR SOT-23-5 高效1MHz2A同步降压调节器
猜你喜欢

JS entry to proficient full version

秒杀项目收获

SWIG tutorial "two"

一个 ABAP 开发的新浪微博语义情感分析工具

为什么中国的数字是四位一进,而西方的是三位一进?

NFT digital collection development issue - digital collection platform

Cesium Quick Start 4-Polylines primitive usage explanation

Rich Dad Poor Dad Reading Notes

2025年推出 奥迪透露将推出大型SUV产品

Recommend a few had better use the MySQL open source client, collection!
随机推荐
640. Solving Equations: Simple Simulation Problems
Data Types and Integer Storage
架构设计之一——基础架构
Parse the value of uuid using ABAP regular expressions
storage of data in memory
Appium for APP automation testing
FP6378AS5CTR SOT - 23-5 effective 1 mhz2a synchronous buck regulator
scala 基础篇
持续集成实战 —— Jenkins自动化测试环境搭建
2022 CCF中国开源大会会议通知(第四轮)
消息称原美图高管加盟蔚来手机 顶配产品或超7000元
IPC:Interrupts and Signals
关于async\await 的理解和思考
photoshop入门教程
易观千帆银行用户体验中心:聚焦银行APP用户体验
Custom picker scroll selector style
Lilac Garden
Cesium Quick Start 4-Polylines primitive usage explanation
企业如何开展ERP数据治理工作?_光点科技
网络工程师的背包(EDC总结推荐)