Вниз
Скачать: CL | DM;

Вопрос про массив   Найти похожие ветки 

← →
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 вся ветка

Скачать: CL | DM;



Память: 0.47 MB
Время: 0.027 c
14-80116
AnderosNRules
2004-02-02 18:36
2004.02.25
Kto znayet besplatniy host dlya web a s CGI ?


14-80258
*pavel
2004-02-04 11:40
2004.02.25
Проходная на замке


4-80378
devil_dk
2003-12-20 01:13
2004.02.25
Создать рабочий стол


3-79652
Настенька
2004-01-31 11:14
2004.02.25
Разноцветные строки DBGrida


14-80179
Palladin
2004-01-31 20:33
2004.02.25
Enum фирм использующих Delphi как основной инструмент разработки




   Наверх