2016-03-04 74 views

回答

1

如果這些值進行排序,平均會在排序列表中的中心

如果a <= b <= c那麼B的中位數,B,C

12,5,8 - 中位數是8

1

在快速排序,三位數中值是在每次迭代中選擇數據透視表的方法之一。數據透視表是數組中的一個元素,用於通過將數組的所有值與數據透視表進行比較來對數組進行分區。

理想的樞軸值是數組的值,但是這需要時間來計算。所以,人們一直使用數組的最左邊的值作爲簡單的樞軸值。但是,當數組已經排序後,這會表現不佳。

中位數的三個規則,建議here,是在一個已經排序的數組的情況下即可獲得良好性能的方式之一。

0

前面的回答都不錯,這裏是一個(清晰的)例如:

{ 9, 7, 4, 12, 3, 1, 6, 1, 7, 4, 13, 2, 4, 15, 8, 9 } 

隨機選擇三個值,三次:

{ 9, 7, 4 } 
{ 2, 12, 15 } 
{ 4, 1, 8 } 

查找每個位數:7,12 4. 查找的中位數:7

使用此爲您的支點。

0

的3個數字的中位數是第二大數目。

+0

雖然這在理論上可以回答的問題,[這將是優選的](// meta.stackoverflow.com/q/8259)以包括回答的主要部分在這裏,並提供鏈路參考。 – manetsus

相關問題