创新写作程序员计算机杂谈

LintCode问题图解-7

2017-09-27  本文已影响16人  billliu_0d62

本文准备讲解1个简单的算法编程问题, 这个算法编程问题来自LintCode平台。不了解.LintCode平台的读者可以阅读笔者文章(在线编程平台推荐-LeetCode)。问题的英文版本描述如下:

Majority Number 3 :

Given an array of integers and a number k, the majority number is the number that occurs more than 1/k of the size of the array.

Find it.

Notice

There is only one majority number in the array.

Example

Given[3,1,2,3,2,3,3,4,4,4] and k=3, return3.

问题的中文版本描述:

多数元素3

给定一个整数数组,找到多数元素,它的数组出现次数严格大于数组元素总数的1/k

Notice

数组中只有唯一的多数元素

Example

给出数组[3,1,2,3,2,3,3,4,4,4],和 k =3,返回 3

标准的算法需要处理2个问题:统计每个元素在数组中出现的次数,寻找出现次数达到要求的元素。统计每个元素在数组中出现的次数需要使用 HashMap。

标准的算法
上一篇 下一篇

猜你喜欢

热点阅读