|
|
Регистрация Восстановить пароль |
Повторная активизация e-mail |
Регистрация | Задать вопрос |
Заплачу за решение |
Новые сообщения |
Сообщения за день |
Расширенный поиск |
Правила |
Всё прочитано |
|
|
Опции темы | Поиск в этой теме |
18.05.2011, 13:51 | #1 |
Пользователь
Регистрация: 30.03.2009
Сообщений: 20
|
Алгоритм поиска в массиве
Добрый день.
Возможно я конкретно туплю, но может ли мне кто-нибудь подсказать быстрый метод поиска максимума (минимума) в одномерном неотсортированном целочисленном массиве. Сортировать массив не имеется возможности. Временная сложность должна быть меньше линейной |
18.05.2011, 13:52 | #2 |
Lawful Evil
Участник клуба
Регистрация: 13.05.2008
Сообщений: 1,208
|
Заводишь переменную, пишешь в неё значение 1го элемента массива.
Гонишь цикл по массиву. Если значение элемента больше(меньше) значения переменной, записываешь его в переменную. После прогонки массива выводишь полученную переменную.
Алгоритм - бесплатен. Поиск багов - бесплатен. Реализация алгоритма - за отдельную плату.
На форуме помогают советами и объясняют, а не пишут на халяву программы, лабы, курсачи и т.д. (c) |
18.05.2011, 14:31 | #3 |
Пользователь
Регистрация: 30.03.2009
Сообщений: 20
|
Для моей задачи это долго )). Спасибо за ответ)
|
18.05.2011, 14:34 | #4 | |
Lawful Evil
Участник клуба
Регистрация: 13.05.2008
Сообщений: 1,208
|
Цитата:
Алгоритм - бесплатен. Поиск багов - бесплатен. Реализация алгоритма - за отдельную плату.
На форуме помогают советами и объясняют, а не пишут на халяву программы, лабы, курсачи и т.д. (c) |
|
18.05.2011, 14:36 | #5 |
Пользователь
Регистрация: 30.03.2009
Сообщений: 20
|
Ну да. Я вот думаю просто, если проверять параллельно с начала до середины и с конца до середины. А потом выбирать между двумя. будет ли быстрее?
|
18.05.2011, 14:49 | #6 | |
Lawful Evil
Участник клуба
Регистрация: 13.05.2008
Сообщений: 1,208
|
Сложность даже выше, проверяются n+1 элементов.
Цитата:
Алгоритм - бесплатен. Поиск багов - бесплатен. Реализация алгоритма - за отдельную плату.
На форуме помогают советами и объясняют, а не пишут на халяву программы, лабы, курсачи и т.д. (c) |
|
18.05.2011, 14:49 | #7 |
Software Developer
Участник клуба
Регистрация: 01.03.2011
Сообщений: 1,098
|
думаю, вряд ли
Болтовня ничего не стоит. Покажите мне код. (c) Linus Torvalds
Помог ответ? -- Поставьте отзыв. Выражения особой благодарности в рублевом эквиваленте отправлять сюда --> R269634919062 |
18.05.2011, 14:56 | #8 |
Старожил
Регистрация: 03.01.2011
Сообщений: 2,508
|
> будет ли быстрее?
быстрее может быть, но общая "временная сложность" останется постоянной и будет продолжать линейно зависеть от размера массива )
"Когда приходит положенное время, человек перестаёт играть в пинбол. Только и всего."
|
18.05.2011, 15:30 | #9 |
Пользователь
Регистрация: 30.03.2009
Сообщений: 20
|
В общем я решил практически проверить. "Мой метод" оказался порядка 25% - 40% быстрее. Да ВСА осталась та же.
вот код: Код:
|
18.05.2011, 15:31 | #10 |
Пользователь
Регистрация: 30.03.2009
Сообщений: 20
|
А какой функцией С++ можно проверить само время. Не GetTickCount (). Что нибудь более тонкое))
|
|
Похожие темы | ||||
Тема | Автор | Раздел | Ответов | Последнее сообщение |
алгоритм поиска | незнайка_на_земле | Помощь студентам | 4 | 08.03.2011 10:46 |
Алгоритм поиска!!!! | vit1990 | Помощь студентам | 14 | 29.01.2011 21:18 |
Написать подпрограмму-процедуру поиска максимального элемента в массиве | Noxil | Паскаль, Turbo Pascal, PascalABC.NET | 3 | 27.11.2008 21:39 |
Алгоритм поиска... | Johnson | Общие вопросы Delphi | 1 | 26.10.2008 08:35 |