1. Заголовок темы должен быть информативным. В противном случае тема удаляется ...
2. Все тексты программ должны помещаться в теги [code=pas] ... [/code], либо быть опубликованы на нашем PasteBin в режиме вечного хранения.
3. Прежде чем задавать вопрос, см. "FAQ", если там не нашли ответа, воспользуйтесь ПОИСКОМ, возможно такую задачу уже решали!
4. Не предлагайте свои решения на других языках, кроме Паскаля (исключение - только с согласия модератора).
5. НЕ используйте форум для личного общения, все что не относится к обсуждению темы - на PM!
6. Одна тема - один вопрос (задача)
7. Проверяйте программы перед тем, как разместить их на форуме!!!
8. Спрашивайте и отвечайте четко и по существу!!!
| lopata |
Сообщение
#1
|
|
Пионер ![]() ![]() Группа: Пользователи Сообщений: 99 Пол: Женский Реальное имя: vera Репутация: 0 |
Бинарный поиск может быть применим на одно поле, в которое элемент сортировочно внесен.
Идея бинарного поиска состоит в том, чтобы сначала рассматривать средний элемент. Если он Искомый, тогда с успехом прерываете. Если не искомый, тогда можно через сравнение искомого элемента со средним установить, нужно ли в нижней или в верхней половине поля дальше искать. При каждом неудачном шаге поиска длина исследоваемой области (досягаемости) поля делится пополам.Это ведет к логарифмеческому Run-time: при n элементах имеется 0(ld n) Шагов поиска. Осуществите основе типа TYPE IntArray = array [...] of integer рекурсивный алгоритм: FUNCTION Contains (a :IntArray ; left,right : integer; x : integer) :BooLean; который в сотрированном поле а внутри области [left...right] бинарно после значения х ищет и результат TRUE возвращает, когда х в поле оказывается. Вышеуказанная фунукция использует call by value. не совсем понимаю задания. очень туго доходит. хотя уверена что когда 2 строчки. |
![]() ![]() |
| lopata |
Сообщение
#2
|
|
Пионер ![]() ![]() Группа: Пользователи Сообщений: 99 Пол: Женский Реальное имя: vera Репутация: 0 |
аха, это поняла...наоборот
Добавлено через 1 мин. поняла. счас исправлю..действительно по всей программе то же самое Добавлено через 2 мин. А с остальным что не так? |
lopata бинарный поиск. поля с рекурсией. 20.01.2010 1:14
lopata сам бинарные деревья в принципе понимани.
но непон… 20.01.2010 1:46
Archon Не следует путать простой бинарный поиск и бинарно… 20.01.2010 2:18
volvo А причем тут бинарные деревья? Они к бинарному пои… 20.01.2010 2:30
lopata Все, товарищи, спасибо. Дико ступила. стыдно 20.01.2010 2:51
lopata Ошибка использования BB кодов форума. Возможно вы … 20.01.2010 5:08
lopata Не. не правильно..
вот кое-что изменила:
FUNCTION… 21.01.2010 2:35
Archon И все-таки неправильно. Покажи целиком программу, … 21.01.2010 2:55
lopata Archon, честно говоря не совсем понимаю о чем ты … 21.01.2010 3:49
Archon Ну смотри:
L - это же Left (левая граница интервал… 21.01.2010 4:20
Archon А ты проверь с приведенным выше массивом. Там всег… 21.01.2010 4:43
lopata все равно не понимаю/ 21.01.2010 5:39
Archon На приведенных мной исходных данных функция из рек… 21.01.2010 6:53
lopata это я уже поняла...
тогда нужно поставить условие … 21.01.2010 7:16
lopata алилуя...
или очередное заблуждение или просвет :
… 21.01.2010 7:49
Archon Ну, не совсем =) Лучше было бы так сделать:FUNCTIO… 21.01.2010 14:55
volvo лучше заменить на
if L + 1 = R then
Contains := … 21.01.2010 23:50
lopata
Dev-Pascal это оболочка. Компилятор, который там … 22.01.2010 1:06
volvo :blink: Уже 2.2.4 на дворе... Ты б скачала новую … 22.01.2010 1:12
lopata ну как..если в DevPascal не работает, я в FPC пров… 22.01.2010 1:16
lopata Всем спасибо. :)
Жаль , что до меня все туго дохо… 22.01.2010 9:04![]() ![]() |
|
Текстовая версия | 23.12.2025 5:33 |