如何在一个比较长且无序的数组中快速查找一个元素最后一次出现的位置?

比如有1亿个元素,每个元素都是从1到100中的某一个值,我现在想知道50最后一次出现在哪个位置,应该怎么查找才会最节省资源?如果是任意次的呢,比如50第5次出现的位置?谢... 比如有1亿个元素,每个元素都是从1到100中的某一个值,我现在想知道50最后一次出现在哪个位置,应该怎么查找才会最节省资源?
如果是任意次的呢,比如50第5次出现的位置?
谢谢!
可以不遍历1亿次么
展开
 我来答
兔子和小强
2012-09-14 · TA获得超过6946个赞
知道大有可为答主
回答量:3332
采纳率:74%
帮助的人:1410万
展开全部
查找第k次出现较容易,定义个变量进行计数,碰到要查找的元素一次就加一,达到k次就找到了。
如果查找倒数第k次只需要倒序遍历就可以了。
_cf03
2012-09-14 · TA获得超过191个赞
知道小有建树答主
回答量:276
采纳率:0%
帮助的人:120万
展开全部
可以设置两个指针,一个从数组的头部开始,一个从尾部开始。
已赞过 已踩过<
你对这个回答的评价是?
评论 收起
推荐律师服务: 若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询

为你推荐:

下载百度知道APP,抢鲜体验
使用百度知道APP,立即抢鲜体验。你的手机镜头里或许有别人想知道的答案。
扫描二维码下载
×

类别

我们会通过消息、邮箱等方式尽快将举报结果通知您。

说明

0/200

提交
取消

辅 助

模 式