Часовой пояс: UTC + 3 часа




Начать новую тему Новая тема / Ответить на тему Ответить  Сообщений: 4 
  Пред. тема | След. тема 
В случае проблем с отображением форума, отключите блокировщик рекламы
Автор Сообщение
 

Member
Статус: Не в сети
Регистрация: 17.03.2005
Откуда: Чебоксары
Задание такое:
Дан массив чисел (каких неизвестно).
Надо найти в массиве два различных элемента в сумме дающих заданное
значение.
Сложность алгоритма не должна быть больше O(nlog2n).

_________________
Крысиный яд не игрушка.



Партнер
 

Вроде следующий:
Пусть числа ai, сумма S.
1. Сортируешь ai ( за nlnn ).
2. Для каждого (по порядку) a=ai ищешь b=S-a. Поиск в сорт ai это lnn. Всего n вариантов a. => nlnn.
3. Сложность nlnn + nlnn = nlnn.


 

Member
Статус: Не в сети
Регистрация: 17.03.2005
Откуда: Чебоксары
Blackmouse
я вот вчера тоже насчёт этого варианта подумал.
В принципе, и он не плох. Только я думаю, может быть, есть и линейный?

_________________
Крысиный яд не игрушка.


 

Денис Черемисов
В общем слущае я могу доказать что самый лучший алгорит сложнее чем линейный.
Но если числа лежат в некотором диапазоне, то есть линейный алгоритм (например 0..255 :) )(хотя я не проверял).


Показать сообщения за:  Поле сортировки  
Начать новую тему Новая тема / Ответить на тему Ответить  Сообщений: 4 
-

Часовой пояс: UTC + 3 часа


Кто сейчас на конференции

Сейчас этот форум просматривают: нет зарегистрированных пользователей и гости: 1


Вы не можете начинать темы
Вы не можете отвечать на сообщения
Вы не можете редактировать свои сообщения
Вы не можете удалять свои сообщения
Вы не можете добавлять вложения

Перейти:  
Создано на основе phpBB® Forum Software © phpBB Group
Русская поддержка phpBB | Kolobok smiles © Aiwan