#include <unordered_map>
class Solution {
public:
/**
* 代码中的类名、方法名、参数名已经指定,请勿修改,直接返回方法规定的值即可
*
*
* @param numbers int整型vector
* @return int整型
*/
int MoreThanHalfNum_Solution(vector<int>& numbers) {
int l = numbers.size();
unordered_map<int, int> map;
for(int i = 0 ; i < l ; i++ ){
map[numbers[i]]++;
if(map[numbers[i]]>(l/2)){
return numbers[i];
}
}
return 0;
// for(auto itor = map.begin();itor != map.end();itor++){
// if(itor->second>(l/2)){
// return itor->first;
// }
// }
// return 0;
}
};
练习使用stl::unordered_map用法,auto关键字
迭代器循环写法:
unordered_map <int ,int>map;//key - value
for(auto itor:map){
itor->first//对应键 但是一般不能修改键,一般是用到这个值时候用的
//比如
map[itor->first]//等价于itor->second
itor->second//对应值
//数据操作。。。
}

京公网安备 11010502036488号