Модераторы: Poseidon, Snowy, bems, MetalFan
  

Поиск:

Ответ в темуСоздание новой темы Создание опроса
> Проверка на наличие эл-та в массиве 
:(
    Опции темы
altarasjuk
Дата 6.6.2003, 15:48 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Опытный
**


Профиль
Группа: Участник
Сообщений: 331
Регистрация: 7.5.2003
Где: Харьков

Репутация: 1
Всего: 1



Всем привет!
Ну очень тупо, но всё же как проверить наличие числа в массиве не обходя его? т.е. может какие уже готовые методы есть?


--------------------
Правда - изобретение маньяков: колет глаза и режет уши.
PM MAIL ICQ   Вверх
altarasjuk
Дата 6.6.2003, 15:51 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Опытный
**


Профиль
Группа: Участник
Сообщений: 331
Регистрация: 7.5.2003
Где: Харьков

Репутация: 1
Всего: 1



А если быть более точным то вот:
Есть 2 массива. На их основе надо построить третий, но так, чтобы значения не дублировались.


--------------------
Правда - изобретение маньяков: колет глаза и режет уши.
PM MAIL ICQ   Вверх
dm9
Дата 6.6.2003, 16:26 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Дмитрий Копытин
****


Профиль
Группа: Vingrad developer
Сообщений: 3876
Регистрация: 22.7.2002
Где: Москва

Репутация: 6
Всего: 137



Я бы упорядочил массивы, а потом шел бы по обоим параллельно от меньшего к большему и строил бы третий (который тоже, соответственно, получится упорядоченным).

Попробуй закинь тему в алгоритмы
PM MAIL ICQ   Вверх
Song
Дата 6.6.2003, 16:31 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Sysman.ru
***


Профиль
Группа: Участник
Сообщений: 1095
Регистрация: 2.6.2002

Репутация: 2
Всего: 4



altarasjuk
Ты возьми не массив в чистом виде, а TStrings например. У него встроенные способы отслеживания дублированных записей.


--------------------
Прежде чем сказать "Невозможно", подумай, прав ли ты
PM WWW ICQ   Вверх
vickr
Дата 6.6.2003, 16:36 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Бывалый
*


Профиль
Группа: Участник
Сообщений: 183
Регистрация: 13.5.2003
Где: Санкт-Петербург

Репутация: нет
Всего: нет



А вообще найти число в массиве, не обходя его полностью, можно только после его сортировки (согласен c dm9), используя, например, метод деления отрезков пополам, т.е. начав с середнины и далее последовательно перескакивая на пол-оставшегося отрезка влево или вправо, в зависимисти от того, больший или меньший встретился элемент массива (по сравнению с искомым числом). Тема, безусловно, достояна топика по алгоритмам.
--------------------
Каждую секунду, тыкая в клавиши, мы давим насмерть не менее 1000 микробов =:)
PM MAIL   Вверх
altarasjuk
Дата 6.6.2003, 16:37 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Опытный
**


Профиль
Группа: Участник
Сообщений: 331
Регистрация: 7.5.2003
Где: Харьков

Репутация: 1
Всего: 1



Цитата
Ты возьми не массив в чистом виде, а TStrings например. У него встроенные способы отслеживания дублированных записей.

а по подробнее, и корость работы там не сильно тормозится? гдето 10000 эл-тов


--------------------
Правда - изобретение маньяков: колет глаза и режет уши.
PM MAIL ICQ   Вверх
Song
Дата 6.6.2003, 16:46 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Sysman.ru
***


Профиль
Группа: Участник
Сообщений: 1095
Регистрация: 2.6.2002

Репутация: 2
Всего: 4



Они игнорируются при добавлении, а не какой-то отдельной процедурой, которая их исключает. Правда есть одна особенность - список должен быть автоматически отсортирован обязательно. Тебе может такое не подойти.


--------------------
Прежде чем сказать "Невозможно", подумай, прав ли ты
PM WWW ICQ   Вверх
altarasjuk
Дата 6.6.2003, 17:15 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Опытный
**


Профиль
Группа: Участник
Сообщений: 331
Регистрация: 7.5.2003
Где: Харьков

Репутация: 1
Всего: 1



.... да в джаве с этим намного получше ..... sad.gif


--------------------
Правда - изобретение маньяков: колет глаза и режет уши.
PM MAIL ICQ   Вверх
Akella
Дата 18.6.2003, 12:21 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Творец
****


Профиль
Группа: Модератор
Сообщений: 18485
Регистрация: 14.5.2003
Где: Корусант

Репутация: 36
Всего: 329



А если использовать не масивы, а множества. Тогда на основе множества1 создаешь множество3, после добавляешь из множества2 те составляющие, которые отсутствуют в множестве3.
типа:
if not set2[0] in set3 then set3+set2[0]
извини, синтаксис точно не помню
PM MAIL   Вверх
  
Ответ в темуСоздание новой темы Создание опроса
Правила форума "Delphi: Общие вопросы"
SnowyMetalFan
bemsPoseidon
Rrader

Запрещается!

1. Публиковать ссылки на вскрытые компоненты

2. Обсуждать взлом компонентов и делиться вскрытыми компонентами

  • Литературу по Дельфи обсуждаем здесь
  • Действия модераторов можно обсудить здесь
  • С просьбами о написании курсовой, реферата и т.п. обращаться сюда
  • Вопросы по реализации алгоритмов рассматриваются здесь
  • 90% ответов на свои вопросы можно найти в DRKB (Delphi Russian Knowledge Base) - крупнейшем в рунете сборнике материалов по Дельфи


Если Вам понравилась атмосфера форума, заходите к нам чаще! С уважением, Snowy, MetalFan, bems, Poseidon, Rrader.

 
0 Пользователей читают эту тему (0 Гостей и 0 Скрытых Пользователей)
0 Пользователей:
« Предыдущая тема | Delphi: Общие вопросы | Следующая тема »


 




[ Время генерации скрипта: 0.0645 ]   [ Использовано запросов: 22 ]   [ GZIP включён ]


Реклама на сайте     Информационное спонсорство

 
По вопросам размещения рекламы пишите на vladimir(sobaka)vingrad.ru
Отказ от ответственности     Powered by Invision Power Board(R) 1.3 © 2003  IPS, Inc.