Форум: "Основная";
Текущий архив: 2004.02.25;
Скачать: [xml.tar.bz2];
ВнизВопрос про массив Найти похожие ветки
← →
zamkom (2004-02-11 15:04) [0]Ув. масстера. Вопрос такой: Есть код
var
BlockStrok : Array [0..10000] of string;
begin
For i:=0 to 10000 do
... Здесь заполняется массив;
А вот здесь надо найти из всего этого массива одну строку удовлетворяющую условию.
Конечно можно через For перебрать все строки и каждую сравнить, но может быть можно как нибудь иначе решить эту проблему.
← →
VLAD-MAL (2004-02-11 15:05) [1]Используй TStringList с включенной сортировкой. Там в этом случае автоматически задействуется бинарный поиск. Жуть как быстро.
← →
Семен Сорокин (2004-02-11 15:06) [2]а проверять на условие нельзя когда заносишь в массив данные? тогда заново пробегать не надо будет.
← →
Тимохов (2004-02-11 15:10) [3]
> zamkom © (11.02.04 15:04)
Если тебе надо всего один раз найти строку (т.е. не многократно) - ищи перебором и не одумляйся.
Если операция частая, то слушай 1 или 2.
← →
zamkom (2004-02-11 15:11) [4]Хорошо попробую с [1], но грустно...
← →
Тимохов (2004-02-11 15:12) [5]
> но грустно...
Работать всегда тяжел... :)))))
Поизучай еще хеш функции, также полезная и быстрая весч.
← →
VLAD-MAL (2004-02-11 15:16) [6]Ага, хэш, он на TStringList грустит.
Как бы суицида не случилось...
← →
TUser (2004-02-11 16:21) [7]В 10000 строчек бынарный поиск - это и так быстро. Так что хэш тута не нужен.
← →
Тимохов (2004-02-11 16:32) [8]
> В 10000 строчек бынарный поиск - это и так быстро. Так что
> хэш тута не нужен.
Это чтобы он понял, что бывает еще грустнее :))))
Вообще говоря, имхо, это сильно зависит от задачи. Если такой поиск нужен очень часто (раз та 1000000 подряд), то хорошый хеш тут не заменим.
← →
Alex Konshin (2004-02-12 02:51) [9]А тебе действительно нужен массив?
В зависимости от ответа посмотри на юниты AVLTrees и Arrays на моем сайте http://home.earthlink.net/~akonshin/
← →
Miwa (2004-02-12 05:21) [10]А чего собственно от TStringList"а грустить - вот чего не пойму.
← →
Alex Konshin (2004-02-12 06:06) [11]Задачи они разные бывают. Вполне возможно, что сортировать нельзя.
Страницы: 1 вся ветка
Форум: "Основная";
Текущий архив: 2004.02.25;
Скачать: [xml.tar.bz2];
Память: 0.46 MB
Время: 0.027 c