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

Быстрый список для индексирования....   Найти похожие ветки 

← →
i   (2008-06-23 11:21) [0]

Нужно работать со списком вида

str1=int1
str2=int2

т.е. кооторый будет сопоставлять строке число.

важно чтобы он мог быстро вернуть число по заданной строке.

Причем для меня список не должен быть отсортированным (новые строки добавляем в конец).

TStringList не устраивает тем, что использует полный перебор при поиске айтема (при sorted=false).

Список динамический, кол-во айтемов заранее неизвестно.

Есть какие-либо быстрые решения данного вопроса?


← →
Плохиш ©   (2008-06-23 11:23) [1]


> TStringList не устраивает тем, что использует полный перебор
> при поиске айтема (при sorted=false).

А что, знаешь другие варианты?


← →
i   (2008-06-23 11:26) [2]


> А что, знаешь другие варианты?


Мало ли, может есть какие либы по типу QStrings, но для списков.


← →
Ega23 ©   (2008-06-23 11:26) [3]


> Причем для меня список не должен быть отсортированным (новые
> строки добавляем в конец).


Полный перебор с Break на найденном значении.


← →
Поросенок Винни-Пух ©   (2008-06-23 11:28) [4]

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


← →
ЮЮ ©   (2008-06-23 11:41) [5]

хранить числа в «хэш-таблице», хэш считать по строке.

На худой конец, помимо несортированного иметь в пару отсортированный. В отсортированном TStringList-е в Objects хранить индекс в неотсортированном, равный TStringList.Count до вставки item-a.
Тогда в отсортированном по строке находим индекс элемента в неотсортированном.


← →
Slym ©   (2008-06-23 11:53) [6]

iniFiles:
 TStringHash
 THashedStringList
 TMemIniFile


← →
i   (2008-06-23 13:38) [7]


> На худой конец, помимо несортированного иметь в пару отсортированный.
>  В отсортированном TStringList-е в Objects хранить индекс
> в неотсортированном, равный TStringList.Count до вставки
> item-a.
> Тогда в отсортированном по строке находим индекс элемента
> в неотсортированном.


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


> iniFiles:
>  TStringHash
>  THashedStringList
>  TMemIniFile


спасибо, посмотрим.



Страницы: 1 вся ветка

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



Память: 0.46 MB
Время: 0.012 c
15-1212582144
123-ий
2008-06-04 16:22
2008.07.20
Skype


2-1213799936
Антон
2008-06-18 18:38
2008.07.20
Составить алгоритм решения задачи (можно привести программу на Я


1-1195232021
wipr
2007-11-16 19:53
2008.07.20
Окно программы становится недоступным (программа не отвечает)


2-1214074663
Igor23
2008-06-21 22:57
2008.07.20
Подскажите новечку плиз D7+MySQL


2-1213887146
Res
2008-06-19 18:52
2008.07.20
файл и потоки




   Наверх