Portál AbcLinuxu, 5. listopadu 2025 06:07
Potřeboval bych co nejrychleji vypočítat medián 1D pole (floating point), zkoušel jsem funkce
qsort - velmi pomalá, cca 2 minuty navíc pro můj program
gsl_sort + gsl_stats_median_from_sorted_data - pomalá, cca 40 vteřin navíc
Existuje něco rychlejšího? Algoritmus quickselect mi vycházel ještě výrazně pomalejší.
Složtost O(nlog(n)) má i seřazení pole (O(nlog(n))) a výběr prostředního prvku (O(1)). Složitost výpočtu medianu je ale pouze O(n), viz wikipedia.
Tiskni
Sdílej:
ISSN 1214-1267, (c) 1999-2007 Stickfish s.r.o.