Короче порылся покопался и ничего более быстрого не нашел: Линейный весовой алгоритм гораздо больше операций которые не перекрывают недостатки нелинейных переходов а также приводят к сложности распутывания если несколько одинаковых элементов в окне. Рекурсивный алгоритм определения и удаления min и max также не оказался быстрее. Да еще он чисто медианный.
В моем алгоритме при окне = 9 среднее значение 21 такт/отвод, вычисленное по 1000 входным отсчетам. При окне<20 использую линейный поиск уходящего отсчета. Если больше - эффективней становиться бинарный поиск.
|