|
ru.algorithms- RU.ALGORITHMS ---------------------------------------------------------------- From : Yuri Shalanin 2:5045/79.30 11 Jul 2003 17:03:18 To : Serge Kuchkin Subject : 90% --------------------------------------------------------------------------------
10 Июля 2003 года ты писал(а) к All:
SK> Есть выбоpка из N pезyльтатов экспеpимента, значения измеpяемой
SK> величины лежат в диапазоне [a,b]. Распpеделение неизвестно. Тpебyется
SK> найти отpезок [a1,b1] минимальной длины, такой, чтобы в него попадал
SK> заданный пpоцент pезyльтатов, напpимеp 90%.
Предложу тебе такой вариант(не факт что он рабочий - только что придумал):
1. Вычисляешь 90% от N - пусть это равно Х
2. Выбираешь О(Х) - точность с которой хочешь получить результат.
3. Разбиваешь [a,b] с шагом ax (ах - выбираешь сам в каждом конкретном случае)
на множество меньших отрезков.<-----------|
4. Для каждого из получившихся отрезков -| счетаешь колличество попаданий (Кi)
измеряемой величины(ИВ), т.е. смотришь сколько раз ИВ попала в каждый из
отрезков.
5. Затем сравниваешь Х и К для каждого отрезка, те модуль(Х-Кi) < О(Х) если
тру, то ты нашел отрезок.
6. Если п.5 не сработал, то берешь два соседних отрезка и смотришь
модуль(К1+К2-X) < О(Х). (Перебераешь все соседние отрезки)
К1 - колличество попаданий в первый отрезок
К2 - ---//------ ----//--- во второй отрезок
7. Если не сработал п.6, то берешь 3-и соседних отрезка и тд пока не найдешь.
Если получившийся результат(отрезок) слишком велик, то можно попробовать
уменьшить шаг разбиения(ах) или увеличить величину О(Х)
*2ALL* Если я тут фигню написал, и мой алгоритм работать не будет, то тыкните
меня носом туда где я неправ. (Самому просто интересно)
[ *ЕД(і* ] Serge
--- GoldED+/W32 1.1.4.7
* Origin: }{ачу ТТ (2:5045/79.30)
Вернуться к списку тем, сортированных по: возрастание даты уменьшение даты тема автор
Архивное /ru.algorithms/33563f0e5a64.html, оценка из 5, голосов 10
|