description計算
有限個數的
資料的中位數的方法是:把所有的同類
資料按照大小的順序
排列。如果資料的個數是
奇數,則中間那個
資料就是這群
資料的中位數;如果
資料的個數是
偶數,則中間那2個資料的
算術平均值
就是這群
資料的中位數。現在給出n個正整數,求他們的中位數。
input
第一行:n —— 數列數字的個數(1 <=n<=1000)。
第二行:有n個正整數,每兩個數中間用空格隔開(每乙個正整數都小於10000)。
output
求這n個正整數的中位數(保留小數點後兩位有效數字)。
sample input4
1 2 3 4 3
1 2 3
sample output
2.50
2.00
ac**:
#include #include //遞增 的快排演算法
int compinc(const void *a, const void *b)
int main()
{ float k; //注意輸出格式
int i,j,n,t;
int a[1001];
int len ;
while(scanf("%d ",&len)!=eof){ //要注意輸入的終止條件
for(i=0;i首先是排序,按照遞增或遞減都可以。
把排好序的數存放在乙個陣列中方便後面呼叫。
看存放在陣列中的數的長度。取中間值(奇數直接取中間值,偶數用中間的兩個數的平均值)
注意:陣列是從 a[0] 還是從 a[1] 存放的。
中位數的中位數
參照王曉東的演算法設計 中位數的中位數,即將一串數分成n段,求其排好序了的中間那個數,再把這些所有中位數再求一次中位數。for int i 0 i r p 4 5 i 找中位數的中位數,r p 4即上面所說的n 5 int x lineselect a,p,p r p 4 5,r p 4 10 線性...
BFPRT(中位數的中位數)演算法
又稱為 中位數的中位數演算法 該演算法由 blum floyd pratt rivest tarjan 在1973年提出,最壞時間複雜度為o n 最差的空間複雜度為o logn 演算法步驟 1 將 n 個元素劃分為 n 5 個組,每組 5 個元素,若有剩餘,捨去 2 使用排序方法找到 n 5 個組中...
hive 中位數 Hive的中位數
關於求解中位數,我們知道在python中直接有中位數處理函式 mean 比如在python中求解乙個中位數,很簡單。python計算中位數 import numpy as np nums 1.1,2.2,3.3,4.4,5.5,6.6 均值np.mean nums 中位數 np.median num...