多数元素(c++):
法一(直接排序):先用sort函数排好序,这样,我们想要的数就会靠近中间重叠。所以再返回中间(即n/2)的数即可。
法二(哈希映射):用for循环将数组遍历到哈希映射中,再遍历哈希映射中所有的键对值,返回最大的值
法三(Boyer-Moore投票算法):先设出两个数,即候选众数candidate(初始值可为任意数)和它出现的次数count(初始为0)。然后用for循环遍历数组,先给candidate赋值(即数组的第一个数)再判断数组中的数是否等于它,若等于,则次数count加一;若不等,则次数count减一。遍历完后,candidate即整个数组的众数。
(方法还很有多,先理解了这几个)
新认识(了解):c++中for循环的三种形式,哈希映射,Boyer-Mooer投票算法