编程问题,谢谢

libralibra 2008-04-09 08:49:21
有一数列如下,求其中位数(中间那个数),例如长度为9(有时候也为偶数),就是求第五个数

1 2 2 3 5 5 5 5 7

红的就是中位数了.
现在问题是,我得到了数的个数,例如
1-1个
2-2个
3-1个
4-0个
5-3个
6-0个
7-1个

我得到的数列是1 2 1 0 3 0 1
怎么由这些个数求出中位数?
谢谢,目前没有头绪中
...全文
110 3 打赏 收藏 转发到动态 举报
写回复
用AI写文章
3 条回复
切换为时间正序
请发表友善的回复…
发表回复
DarRen_ 2008-04-10
  • 打赏
  • 举报
回复
那如果数列的长度是偶数呢?
jmulxg 2008-04-10
  • 打赏
  • 举报
回复
首先求总数,然后求一半的位置在哪个组,就可以求出来了
oo 2008-04-09
  • 打赏
  • 举报
回复
1,扫一遍,得到总数
2,再扫一遍,找到(总数+1)/2的那个数。

假设数列放到 a[N]中

int Count = 0;
for(i=0;i<N;i++)
{
Count += a[N];
}
int CurCount = 0;
for(i=0;i<N;i++)
{
CurCount += a[N];
if(CurCount >= (Count+1)/2) //got it
{
printf("result is %d\n", i+1);
break;
}
}
作者:July、阿财。 时间:二零一一年十月十三日。 ------------------------------ 无私分享造就开源的辉煌。 今是二零一一年十月十三日,明日14日即是本人刚好开博一周年。在一周年之际,特此分享出微软面试 全部100题答案的完整版,以作为对本博客所有读者的回馈。 一年之前的10月14日,一个名叫July 的人在一个叫csdn 的论坛上开帖分享微软等公司数据结构+算法 面试100题,自此,与上千网友一起做,一起思考,一起解答这些面试题目,最终成就了一个名为:结构之法 算法之道的编程面试与算法研究并重的博客,如今,此博客影响力逐步渗透到海外,及至到整个互联网。 在此之前,由于本人笨拙,这微软面试100题的答案只整理到了前60题(第1-60题答案可到本人资源下 载处下载:http://v_july_v.download.csdn.net/),故此,常有朋友留言或来信询问后面40题的答案。只是 因个人认为:一、答案只是作为一个参考,不可太过依赖;二、常常因一些事情耽搁(如在整理最新的今年 九月、十月份的面试题:九月腾讯,创新工场,淘宝等公司最新面试十三题、十月百度,阿里巴巴,迅雷搜狗 最新面试十一题);三、个人正在针对那100题一题一题的写文章,多种思路,不断优化,即成程序员编程 艺术系列。自此,后面40题的答案迟迟未得整理。且个人已经整理的前60题的答案,在我看来,是有诸多问 题与弊端的,甚至很多答案都是错误的。 互联网总是能给人带来惊喜。前几日,一位现居美国加州的名叫阿财的朋友发来一封邮件,并把他自己 做的全部100题的答案一并发予给我,自此,便似遇见了知己。十分感谢。 任何东西只有分享出来才更显其价值。本只需贴出后面40题的答案,因为前60题的答案本人早已整理上 传至网上,但多一种思路多一种参考亦未尝不可。特此,把阿财的答案再稍加整理番,然后把全部100题的答 案现今都贴出来。若有任何问题,欢迎不吝指正。谢谢。 上千上万的人都关注过此100题,且大都都各自贡献了自己的思路,或回复于微软100题维护地址上,或 回复于本博客内,人数众多,无法一一标明,特此向他们诸位表示敬意和感谢。谢谢大家,诸君的努力足以影 响整个互联网,咱们已经迎来一个分享互利的新时代。 感谢诸君,请享用.....

33,010

社区成员

发帖
与我相关
我的任务
社区描述
数据结构与算法相关内容讨论专区
社区管理员
  • 数据结构与算法社区
加入社区
  • 近7日
  • 近30日
  • 至今
社区公告
暂无公告

试试用AI创作助手写篇文章吧