鱼C论坛

 找回密码
 立即注册
查看: 2501|回复: 4

2013 百度校招 研发工程师 一道笔试题??

[复制链接]
发表于 2012-9-24 17:15:46 | 显示全部楼层 |阅读模式
1鱼币
问题在:http://bbs.fishc.com/thread-22394-1-1.html   欢迎踊跃发言!!

想知道小甲鱼最近在做啥?请访问 -> ilovefishc.com
发表于 2012-11-7 15:00:18 | 显示全部楼层
我们首先取20个数组的第一个数据进行比较,取出这20个数里面的最大值。因为数组里面的数据都是降序排列的,所以这20个数的最大值也就是10000个数中的最大值。然后将取出这个最大值的那个数组里面的元素减一。也就是让原来的数值向前顺移动,即array[0]=array[1]……。
重复这个比较500次,取出的500个数应该就是这10000个数里面的最大值……
想知道小甲鱼最近在做啥?请访问 -> ilovefishc.com
回复

使用道具 举报

发表于 2016-8-16 14:53:12 | 显示全部楼层
array[0]=array[1]
想知道小甲鱼最近在做啥?请访问 -> ilovefishc.com
回复

使用道具 举报

发表于 2016-8-21 19:55:03 | 显示全部楼层
学习一下
想知道小甲鱼最近在做啥?请访问 -> ilovefishc.com
回复

使用道具 举报

发表于 2016-8-21 20:16:34 From FishC Mobile | 显示全部楼层
涅槃的龙 发表于 2012-11-7 15:00
我们首先取20个数组的第一个数据进行比较,取出这20个数里面的最大值。因为数组里面的数据都是降序排列的, ...

想法是可以的,但是数组中的元素向前移动会耗费大量时间,n方级的,我的想法是给每个数组安排一个游标,哪个数组中的元素“取出"后就将游标移向下一位,然后参与下一次20个数的比较
想知道小甲鱼最近在做啥?请访问 -> ilovefishc.com
回复

使用道具 举报

您需要登录后才可以回帖 登录 | 立即注册

本版积分规则

小黑屋|手机版|Archiver|鱼C工作室 ( 粤ICP备18085999号-1 | 粤公网安备 44051102000585号)

GMT+8, 2024-6-9 18:10

Powered by Discuz! X3.4

© 2001-2023 Discuz! Team.

快速回复 返回顶部 返回列表