Russian Qt Forum
Ноябрь 24, 2024, 13:36
Добро пожаловать,
Гость
. Пожалуйста,
войдите
или
зарегистрируйтесь
.
Вам не пришло
письмо с кодом активации?
1 час
1 день
1 неделя
1 месяц
Навсегда
Войти
Начало
Форум
WIKI (Вики)
FAQ
Помощь
Поиск
Войти
Регистрация
Russian Qt Forum
>
Forum
>
Qt
>
Общие вопросы
>
Подскажите есть ли ыв Qt что-нибудь для хештаблиц и дерева?
Страниц: [
1
]
2
Вниз
« предыдущая тема
следующая тема »
Печать
Автор
Тема: Подскажите есть ли ыв Qt что-нибудь для хештаблиц и дерева? (Прочитано 6478 раз)
lolbla2
Гость
Подскажите есть ли ыв Qt что-нибудь для хештаблиц и дерева?
«
:
Февраль 25, 2012, 20:39 »
Нужен стандартный класс или что-нибудь для реализации хештаблицы и дерева..
Записан
mutineer
Гость
Re: Подскажите есть ли ыв Qt что-нибудь для хештаблиц и дерева?
«
Ответ #1 :
Февраль 25, 2012, 20:41 »
QHash?
Записан
lolbla2
Гость
Re: Подскажите есть ли ыв Qt что-нибудь для хештаблиц и дерева?
«
Ответ #2 :
Февраль 25, 2012, 20:44 »
Цитата: mutineer от Февраль 25, 2012, 20:41
QHash?
А как он работает? Вообщем мне нужно Сравнить эффективность дерева и хештаблицы.
Записан
mutineer
Гость
Re: Подскажите есть ли ыв Qt что-нибудь для хештаблиц и дерева?
«
Ответ #3 :
Февраль 25, 2012, 20:47 »
тебе надо сравнить эффективность реализации дерева и хештаблицы в Qt?
Записан
lolbla2
Гость
Re: Подскажите есть ли ыв Qt что-нибудь для хештаблиц и дерева?
«
Ответ #4 :
Февраль 25, 2012, 20:48 »
Цитата: mutineer от Февраль 25, 2012, 20:47
тебе надо сравнить эффективность реализации дерева и хештаблицы в Qt?
Да, задание такое на лабу... Короче нужно сравнить скорость поиска по двоичному дереву и по хештаблице..
«
Последнее редактирование: Февраль 25, 2012, 21:03 от lolbla2
»
Записан
mutineer
Гость
Re: Подскажите есть ли ыв Qt что-нибудь для хештаблиц и дерева?
«
Ответ #5 :
Февраль 25, 2012, 21:11 »
Цитата: lolbla2 от Февраль 25, 2012, 20:48
Цитата: mutineer от Февраль 25, 2012, 20:47
тебе надо сравнить эффективность реализации дерева и хештаблицы в Qt?
Да, задание такое на лабу... Короче нужно сравнить скорость поиска по двоичному дереву и по хештаблице..
Если в задании нету ничего про Qt, то скорее всего надо самому реализовать)))
Записан
lolbla2
Гость
Re: Подскажите есть ли ыв Qt что-нибудь для хештаблиц и дерева?
«
Ответ #6 :
Февраль 25, 2012, 21:22 »
Цитата: mutineer от Февраль 25, 2012, 21:11
Цитата: lolbla2 от Февраль 25, 2012, 20:48
Цитата: mutineer от Февраль 25, 2012, 20:47
тебе надо сравнить эффективность реализации дерева и хештаблицы в Qt?
Да, задание такое на лабу... Короче нужно сравнить скорость поиска по двоичному дереву и по хештаблице..
Если в задании нету ничего про Qt, то скорее всего надо самому реализовать)))
Да можно и стандартное юзать, а вот бинарное дерево, нету в Qt ? Кстати а какой метод разрешения коллизий в QHash используется?
Записан
Igors
Джедай : наставник для всех
Offline
Сообщений: 11445
Re: Подскажите есть ли ыв Qt что-нибудь для хештаблиц и дерева?
«
Ответ #7 :
Февраль 25, 2012, 21:34 »
"Дерево" имеется ввиду не класс (Q)Tree а в смысле "алгоритм". Напр
std::set. std::map, QMap - дерево (красно-черное)
QHash, QSet - хеши
Проще всего сравнить напр (std::set + QSet), ну или (QMap + QHash).
Записан
Авварон
Джедай : наставник для всех
Offline
Сообщений: 3260
Re: Подскажите есть ли ыв Qt что-нибудь для хештаблиц и дерева?
«
Ответ #8 :
Февраль 25, 2012, 21:59 »
Цитата: Igors от Февраль 25, 2012, 21:34
QMap - дерево (красно-черное)
Неправда
Записан
lolbla2
Гость
Re: Подскажите есть ли ыв Qt что-нибудь для хештаблиц и дерева?
«
Ответ #9 :
Февраль 25, 2012, 22:19 »
Цитата: Igors от Февраль 25, 2012, 21:34
"Дерево" имеется ввиду не класс (Q)Tree а в смысле "алгоритм". Напр
std::set. std::map, QMap - дерево (красно-черное)
QHash, QSet - хеши
Проще всего сравнить напр (std::set + QSet), ну или (QMap + QHash).
QHash, QSet - хеши - а какой там метод разрешения коллизий используется? если я например одно и то же значение попытаюсь занести по одному ключу?
QMap - дерево - мне бинарное нужно а что это ещё за красно - чёрное ?
а серо-бурмалинового нет?
Записан
mutineer
Гость
Re: Подскажите есть ли ыв Qt что-нибудь для хешт
«
Ответ #10 :
Февраль 25, 2012, 23:12 »
Цитата: lolbla2 от Февраль 25, 2012, 22:19
QMap - дерево - мне бинарное нужно а что это ещё за красно - чёрное ?
а серо-бурмалинового нет?
Прежде чем смеяться, научись хотя бы википедию читать...
а по поводу значений по одному ключу - в документации ищи
Записан
Rem Norton
Гость
Re: Подскажите есть ли ыв Qt что-нибудь для хештаблиц и дерева?
«
Ответ #11 :
Февраль 25, 2012, 23:51 »
1. Нет в QHash никакого разбора коллизий. А вот какой он в
QMultiHash
- БМП... Исходники доступны, кому надо, тот выяснит.
2. Деревьев готовых нет. Посторить можно с нуля, на основе QMap или же на основе QStandardItemModel (если надо отобразить на интерфейсе).
3. Хорошо смеется тот, кто смеется без последствий.
Записан
Fat-Zer
Гость
Re: Подскажите есть ли ыв Qt что-нибудь для хештаблиц и дерева?
«
Ответ #12 :
Февраль 26, 2012, 00:41 »
Цитата: Rem Norton от Февраль 25, 2012, 23:51
1. Нет в QHash никакого разбора коллизий. А вот какой он в
QMultiHash
- БМП... Исходники доступны, кому надо, тот выяснит.
2. Деревьев готовых нет. Посторить можно с нуля, на основе QMap или же на основе QStandardItemModel (если надо отобразить на интерфейсе).
3. Хорошо смеется тот, кто смеется без последствий.
1. есть конечно... емнип там то, что называется закрытым, но надо смотреть...
2. QMap - не представляю, чем это может быть, как ни деревом. в любом случае сложность у него, как у дерева. В stl тоже что-то точно представлено деревом, но что именно - не помню
lolbla2
, с такой реализацией препод вас ИМХО пошлёт...
Записан
Rem Norton
Гость
Re: Подскажите есть ли ыв Qt что-нибудь для хештаблиц и дерева?
«
Ответ #13 :
Февраль 26, 2012, 01:04 »
1.
Код
C++ (Qt)
QHash
<
QString
,
int
>
hash
;
hash
[
"one"
]
=
1
;
hash
[
"two"
]
=
2
;
hash
[
"one"
]
=
3
;
qDebug
(
)
<<
hash
;
в отладке: QHash(("one", 3)("two", 2))
И каким методом тут какая коллизия разобрана???
Не надо путать с stl.
2.
Цитировать
The QMap class is a template class that provides a skip-list-based dictionary.
и не более того. Утверждение, что QMap - это всегда дерево так же неверно, как то, что "дерево - это всегда индекс".
Записан
mutineer
Гость
Re: Подскажите есть ли ыв Qt что-нибудь для хештаблиц и дерева?
«
Ответ #14 :
Февраль 26, 2012, 01:08 »
Цитата: Rem Norton от Февраль 26, 2012, 01:04
в отладке: QHash(("one", 3)("two", 2))
И каким методом тут какая коллизия разобрана???
Коллизия в хеш-таблице - это когда два
разных
ключа дают
одинаковый хеш
!
Записан
Страниц: [
1
]
2
Вверх
Печать
« предыдущая тема
следующая тема »
Перейти в:
Пожалуйста, выберите назначение:
-----------------------------
Qt
-----------------------------
=> Вопросы новичков
=> Уроки и статьи
=> Установка, сборка, отладка, тестирование
=> Общие вопросы
=> Пользовательский интерфейс (GUI)
=> Qt Quick
=> Model-View (MV)
=> Базы данных
=> Работа с сетью
=> Многопоточное программирование, процессы
=> Мультимедиа
=> 2D и 3D графика
=> OpenGL
=> Печать
=> Интернационализация, локализация
=> QSS
=> XML
=> Qt Script, QtWebKit
=> ActiveX
=> Qt Embedded
=> Дополнительные компоненты
=> Кладовая готовых решений
=> Вклад сообщества в Qt
=> Qt-инструментарий
-----------------------------
Программирование
-----------------------------
=> Общий
=> С/C++
=> Python
=> Алгоритмы
=> Базы данных
=> Разработка игр
-----------------------------
Компиляторы и платформы
-----------------------------
=> Linux
=> Windows
=> Mac OS X
=> Компиляторы
===> Visual C++
-----------------------------
Разное
-----------------------------
=> Новости
===> Новости Qt сообщества
===> Новости IT сферы
=> Говорилка
=> Юмор
=> Объявления
Загружается...