我不能使用ARRAY。 我只能使用一个变量。 并计算中位数。 我使用以下代码输入10个(未分类)
Printf("enter 10 nos");
for(i=0;i<=10;i++)
scanf("%d",&a);
我试过但只能找到最小值和最大值。但是中间没有运气没有运气。
答案 0 :(得分:0)
由于在没有事先排序的情况下在一次遍历中进行此操作并不容易,但可以这样做。
您需要一种计算运行中位数的方法。
一种方法是使用订单统计树。见http://pine.cs.yale.edu/pinewiki/OrderStatisticsTree。这可能是你老师正在谈论的单变量。但是在C中强制转换为单个变量并不容易。
但这并不是获得中位数统计数据的明智方法。正常的路由是构建一个表示分位数函数的插值器,并使用它来提取中值。