百万级别整型的数组,找二个数字和为100的组合

一个百万级别的整型数组,有数字有可能重复,在数组中到二个数字和为100的所以组合。#腾讯##安卓工程师#
全部评论
用哈希表,从左往右遍历数组,设数组值为value,如果hashmap中存在100-value,则有(value,100-value)对,然后将value插入hashmap(如果value不存在)。时间复杂度o(n)。
点赞 回复 分享
发布于 2016-03-20 01:15
一个整型数据占4Byte,一千万个整型占用40M内存,可以一次性将这些数装入内存,然后排序,再用2个指针,一个指针指向最小的数,一个指针指向最大的数,若这2个数的和比100大,就把后一个指针前移;若比100小,就把前一个指针后移,采用向中间夹逼的方法就可以了
点赞 回复 分享
发布于 2015-11-26 10:49
求解中
点赞 回复 分享
发布于 2015-11-25 15:48

相关推荐

评论
点赞
收藏
分享

创作者周榜

更多
牛客网
牛客网在线编程
牛客网题解
牛客企业服务