Главная страница
    Top.Mail.Ru    Яндекс.Метрика
Форум: "Прочее";
Текущий архив: 2013.03.22;
Скачать: [xml.tar.bz2];

Вниз

нужен список ключ-значение.   Найти похожие ветки 

 
Бумбурум   (2012-02-12 19:41) [0]

нужен быстрый список типа ключ-значение. (Стринг-Поинтер)
где такой можно взять? скорость очень важна.

делал TList с элементами такого типа:

type
 TItem = packed record
    Key: string;
    Data: Pointer;
 end;


поиск тупой в лоб, через фор.
но не думаю, что это так быстро как нужно.


 
Сергей М. ©   (2012-02-12 19:43) [1]


> где такой можно взять?


Ты не поверишь - он прямо перед носом: TStringList


 
DVM ©   (2012-02-12 19:56) [2]


> Бумбурум   (12.02.12 19:41) 


> поиск тупой в лоб, через фор.

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


 
TUser ©   (2012-02-12 20:22) [3]


> скорость очень важна

писать свое, возможно, хэш-таблица, суффиксное дерево, массив+бинарный поиск, ...

> но не думаю, что это так быстро как нужно.

ты думаешь или проверял?


 
Dimka Maslov ©   (2012-02-12 20:25) [4]


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


В отсортированном стринглисте поиск сам по себе уже бинарный применяется.


 
Бумбурум   (2012-02-12 20:25) [5]


>
> TUser ©   (12.02.12 20:22) [3]
>
> ты думаешь или проверял?


мне сказали про некие черно-красные деревья.


 
MBo ©   (2012-02-12 20:33) [6]

http://www.torry.net/pages.php?id=279
Известные названия оттуда:
ACED
AntiDOT
Collections
DIContainers
DeHL
GPLists
SDL


 
DVM ©   (2012-02-12 20:43) [7]


> скорость очень важна.

если количество элементов не запредельно, то бинарный поиск может даже превосходить по скорости хэш таблицы, если последние заполнены существенно и создается масса коллизий в них. При интенсивном удалении хэш таблица тоже деградирует в плане скорости. Короче в 99% задач отсортированного списка за глаза, а в 80% и не отсортированного с тупым for



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

Форум: "Прочее";
Текущий архив: 2013.03.22;
Скачать: [xml.tar.bz2];

Наверх




Память: 0.46 MB
Время: 0.058 c
15-1350823366
samuilus
2012-10-21 16:42
2013.03.22
AdoQuery SQL


2-1340704805
ford
2012-06-26 14:00
2013.03.22
проверить переменную типа Variant


15-1341007816
vasa777
2012-06-30 02:10
2013.03.22
0-Core


2-1333617342
gadget
2012-04-05 13:15
2013.03.22
Сервер WordApplication


2-1337971927
Den
2012-05-25 22:52
2013.03.22
Передать VK_LBUTTON в функцию?





Afrikaans Albanian Arabic Armenian Azerbaijani Basque Belarusian Bulgarian Catalan Chinese (Simplified) Chinese (Traditional) Croatian Czech Danish Dutch English Estonian Filipino Finnish French
Galician Georgian German Greek Haitian Creole Hebrew Hindi Hungarian Icelandic Indonesian Irish Italian Japanese Korean Latvian Lithuanian Macedonian Malay Maltese Norwegian
Persian Polish Portuguese Romanian Russian Serbian Slovak Slovenian Spanish Swahili Swedish Thai Turkish Ukrainian Urdu Vietnamese Welsh Yiddish Bengali Bosnian
Cebuano Esperanto Gujarati Hausa Hmong Igbo Javanese Kannada Khmer Lao Latin Maori Marathi Mongolian Nepali Punjabi Somali Tamil Telugu Yoruba
Zulu
Английский Французский Немецкий Итальянский Португальский Русский Испанский