Название: Нахождение ближайшего числа Отправлено: Пантер от Ноябрь 24, 2011, 15:01 Что-то у меня не получается, мозги уже не варят. :(
Есть вектор чисел (не отсортированный). Есть две границы. Нужно найти в векторе 2 числа, наиболее близкие к этим границам. массив: -1.2 0.1 2.3 2.2 9.8 3.7 0.9 границы: 0 2 результат: 0.1 0.9 Заранее благодарю. Название: Re: Нахождение ближайшего числа Отправлено: ddrtn от Ноябрь 24, 2011, 15:05 Линейный поиск сразу двух чисел в одном цикле. сохранять найденное число и разность с границей (по две штуки). сравнивать разности.
Название: Re: Нахождение ближайшего числа Отправлено: Пантер от Ноябрь 24, 2011, 15:15 Еще сложность в том, что границы не обязательно положительные числа...
Название: Re: Нахождение ближайшего числа Отправлено: ddrtn от Ноябрь 24, 2011, 15:22 а разницы нет.
пусть границы a, b расстояние от x до a:dx = abs(x - a), расстояние от y до b:dy = abs(y - b), ищется минимум dx и dy Название: Re: Нахождение ближайшего числа Отправлено: Пантер от Ноябрь 24, 2011, 15:22 Хм. Сейчас попробую...
Название: Re: Нахождение ближайшего числа Отправлено: Igors от Ноябрь 24, 2011, 15:27 Линейный поиск
Код
Но если жмет скорость, придется повозиться (не буду много писать если это не требуется) Название: Re: Нахождение ближайшего числа Отправлено: ddrtn от Ноябрь 24, 2011, 15:37 Линейный поиск Тут уж нужно value делать pair<double, double>. экономит целый проход цикла Название: Re: Нахождение ближайшего числа Отправлено: Пантер от Ноябрь 24, 2011, 15:42 Igors, спасибо большое. Вроде, оно.
У самого были мысли по-поводу расстояний, но до ума не довел. Вообще, заколдованный проект какой-то, сил много уходит, а дело не спорится. :( Скорость пока не критична, нужно его срочно сдать, а потом уже буду ускорять. Название: Re: Нахождение ближайшего числа Отправлено: kambala от Ноябрь 24, 2011, 15:57 Вообще, заколдованный проект какой-то, сил много уходит, а дело не спорится. :( большинство проектов, если не все, такие в определённый момент времени :)Название: Re: Нахождение ближайшего числа Отправлено: Пантер от Ноябрь 24, 2011, 16:35 Вообще, заколдованный проект какой-то, сил много уходит, а дело не спорится. :( большинство проектов, если не все, такие в определённый момент времени :) |