题解 | #数组中出现次数超过一半的数字#
数组中出现次数超过一半的数字
https://www.nowcoder.com/practice/e8a1b01a2df14cb2b228b30ee6a92163
简单的hash表查找法
#include <unordered_map> class Solution { public: int MoreThanHalfNum_Solution(vector<int>& numbers) { unordered_map<int, int> hash; int len = numbers.size(); for (int i = 0; i < len; i++) { if (hash.find(numbers[i]) == hash.end()) { hash[numbers[i]] = 1; } else { hash[numbers[i]]++; } if (hash[numbers[i]] > len / 2) { return numbers[i]; } } return -1; } };