Форум программистов
 
О проблемах, например, с регистрацией пишите сюда - alarforum@yandex.ru, проверяйте папку спам! Обязательно пройдите активизацию e-mail, а тут можно восстановить пароль.

Вернуться   Форум программистов > C++ > Общие вопросы C/C++
Регистрация

Восстановить пароль
Повторная активизация e-mail

Здесь нужно купить рекламу за 20 тыс руб в месяц! ) пишите сюда - alarforum@yandex.ru
Без учёта ботов - 20000 человек в день, 350000 в месяц.

Ответ
 
Опции темы
Старый 04.06.2018, 14:04   #1
Frakis
Новичок
Джуниор
 
Регистрация: 04.06.2018
Сообщений: 10
По умолчанию Найти элемент в упорядоченном массиве длинны N

Найти элемент в упорядоченном массиве длинны N методом деления массива на k приблизительно равных частей.Нужно как в бинарном поиске все сделать , но делить не на 2 , а на вводимое число k.Заранее спасибо
Frakis вне форума Ответить с цитированием
Старый 04.06.2018, 14:40   #2
p51x
Старожил
 
Регистрация: 15.02.2010
Сообщений: 15,103
По умолчанию

И? Берет код бинарного поиска и заменяете там два на k. Проблема в чем?
p51x вне форума Ответить с цитированием
Старый 04.06.2018, 20:54   #3
Frakis
Новичок
Джуниор
 
Регистрация: 04.06.2018
Сообщений: 10
По умолчанию

А поиск элемента? Там же будет уже не одно среднее число . Как минимум два , если брать k = 3.

Последний раз редактировалось Frakis; 04.06.2018 в 21:00.
Frakis вне форума Ответить с цитированием
Старый 04.06.2018, 20:59   #4
Frakis
Новичок
Джуниор
 
Регистрация: 04.06.2018
Сообщений: 10
По умолчанию

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

Последний раз редактировалось Frakis; 04.06.2018 в 21:07.
Frakis вне форума Ответить с цитированием
Старый 05.06.2018, 00:23   #5
Frakis
Новичок
Джуниор
 
Регистрация: 04.06.2018
Сообщений: 10
По умолчанию

В голове вроде все понятно , а написать код не могу . Не могу разобраться , как реализовать этот код
Frakis вне форума Ответить с цитированием
Старый 05.06.2018, 13:08   #6
Frakis
Новичок
Джуниор
 
Регистрация: 04.06.2018
Сообщений: 10
По умолчанию

Не могли бы вы помочь? Подкинуть идею алгоритма.
Frakis вне форума Ответить с цитированием
Старый 05.06.2018, 13:15   #7
p51x
Старожил
 
Регистрация: 15.02.2010
Сообщений: 15,103
По умолчанию

Так идея та же и она у вас написана. Делим сравниваем, выбираем, повторяем.
p51x вне форума Ответить с цитированием
Старый 05.06.2018, 15:08   #8
Frakis
Новичок
Джуниор
 
Регистрация: 04.06.2018
Сообщений: 10
По умолчанию

Идею я понимаю , я не могу это превратить в код
Frakis вне форума Ответить с цитированием
Старый 05.06.2018, 15:14   #9
Frakis
Новичок
Джуниор
 
Регистрация: 04.06.2018
Сообщений: 10
По умолчанию

Понимаю , что нужно поделить массив на k частей , потом сравнить элемент и снова делить .Но не могу написать это
Frakis вне форума Ответить с цитированием
Старый 05.06.2018, 15:23   #10
evg_m
Старожил
 
Регистрация: 20.04.2008
Сообщений: 5,005
По умолчанию

в массиве у нас N элементов
Цитата:
что нужно поделить массив на k частей
какие номера(индексы) будут граничных элементов. N/k , ...
вот незадача-то N/k вообще-то не будет целое. и...
итак первый из граничных индексов(не элементов) найден, это m.
а какой это элемент?..
а следующий индекс?..
Цитата:
потом сравнить элемент
программа — запись алгоритма на языке понятном транслятору
evg_m вне форума Ответить с цитированием
Ответ

Здесь нужно купить рекламу за 20 тыс руб в месяц! ) пишите сюда - alarforum@yandex.ru
Без учёта ботов - 20000 человек в день, 350000 в месяц.

Опции темы


Похожие темы
Тема Автор Раздел Ответов Последнее сообщение
Найти минимальный элемент в массиве. C++ asdf_7 Помощь студентам 1 09.12.2014 21:11
Найти средний элемент в упорядоченном массиве nurzhan_1990 Помощь студентам 1 12.09.2014 06:29
СИ: Найти в упорядоченном массиве заданный элемент методом деления массива пополам (бинарный поиск) vikysha55 Помощь студентам 1 15.04.2014 12:23
Поиск в массиве, упорядоченном по неубыванию Сурка Помощь студентам 1 15.11.2009 23:24


Проекты отопления, пеллетные котлы, бойлеры, радиаторы
интернет магазин respective.ru
Пеллетный котёл Emtas
котлы EMTAS