LINUX.ORG.RU

Ты сам-то понял, что спросил?

(6+22)/2=14
a[14] = Access Violation Exception

Einstok_Fair ★★☆
()

средний индекс?

Расскажи про контекст задачи, а то звучит всё это как-то странно.

MimisGotAPlan
()

Как найти средний индекс?

Из 6 элементов? Его нет. А вообще получи список ключей и возьми len/2.

no-such-file ★★★★★
()
Ответ на: комментарий от no-such-file

А вообще получи список ключей и возьми len/2.

Он из двух есть:

a[10] = 20

a[20] = 20

Нужный элемент это a[15]

Но если будет:

a[10] = 10

a[20] = 30

Нужный элемент будет правее.

У меня график с двумя или больше пиками. На нем сортировкой отсечены 90% значений. Мне нужна середина между пиками, но не длина деленная на количество.

steemandlinux ★★★★★
() автор топика
Ответ на: комментарий от anonymous

Там может быть 5 5 6 7 25 8 и медиана просто сожрет 25.

steemandlinux ★★★★★
() автор топика
Ответ на: комментарий от steemandlinux

Точно, сортировка + интерполяция. Съедаем значения от меньших к большим.

Это называется линейные ранговые статистики ©.

quickquest ★★★★★
()
Ответ на: комментарий от steemandlinux

Мне нужна середина между пиками, но не длина деленная на количество

Т.е. ты хочешь найти элемент, который ближе всего к среднему значению. Не вижу проблемы - считаешь среднее, находишь элемент с минимальной разницей. Но их может быть несколько.

Там может быть 5 5 6 7 25 8 и медиана просто сожрет 25.

И правильно сделает. Отсчёты 5 5 6 7 8 значимые или нет? Если не значимые, то зачем ты их включаешь, если значимые, то зачем тебе середина между пиками.

no-such-file ★★★★★
()
Последнее исправление: no-such-file (всего исправлений: 1)

Збс, предсказуемость стала класса jhwh.

steemandlinux ★★★★★
() автор топика
Вы не можете добавлять комментарии в эту тему. Тема перемещена в архив.