Гость
Целевая тема:
Создать новую тему:
Автор:
Форумы / Программирование [игнор отключен] [закрыт для гостей] / что такое хэширование ? / 5 сообщений из 5, страница 1 из 1
20.05.2005, 14:52
    #33077321
Ven25
Гость
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
что такое хэширование ?
Подскажите, пожалуйста, что такое хэширование и хэш-доступ к данным ?
...
Рейтинг: 0 / 0
20.05.2005, 15:22
    #33077422
*
*
Гость
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
что такое хэширование ?
Лучше прочитать какую-нибудь книгу (можно Алгоритмы и структуры данных Вирта).

хэширование - средство быстрого поиска данных, основанное на вычислении т.н. хэш-функции (числа, определяемого элементом данных). Это число - индекс в массиве ссылок на данные. Это работает, когда хэш-функцию можно бысро вычислить и большая часть данных дают уникальные значения хэш-функции.
...
Рейтинг: 0 / 0
20.05.2005, 15:30
    #33077449
Интегратор
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
что такое хэширование ?
Ven25Подскажите, пожалуйста, что такое хэширование и хэш-доступ к данным ?

Хочешь ты хранить множество значений, аждое из которых имеет уникальный ключ. Если хранить просто в списке/массиве то для поиска нужного элемента придётся в худшем случае перебрать все данные. Можно хранить данные в сортированном виде что бы использовать бинарный поиск - но в этом случае получаешь дополнительные значительные затраты на удаление/добавление элемента.

Общая идея такая: завести массив фиксированной длины и придумать функцию, осуществляющую отображение значение ключа записи на множество индексов массива 0...n, где n - размер массива. Обычно размер массива << количества записей, так что отображение получается неоднозначное. Если различные ключи приводят в один и тот же индекс массива, то возикает конфлик. Обычно этот конфлик разруливают таким образом: каждый элемент масива содкржит не одну запись, а список записей. То есть для поиска записи по ключу мы:
а). находим индекс i по хэш-функции
б). перебираем весь список элементов этого индекса для поиска элемента с требуемым ключём.
...
Рейтинг: 0 / 0
20.05.2005, 16:59
    #33077760
Ven25
Гость
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
что такое хэширование ?
Интегратор Ven25Подскажите, пожалуйста, что такое хэширование и хэш-доступ к данным ?

Хочешь ты хранить множество значений, аждое из которых имеет уникальный ключ. Если хранить просто в списке/массиве то для поиска нужного элемента придётся в худшем случае перебрать все данные. Можно хранить данные в сортированном виде что бы использовать бинарный поиск - но в этом случае получаешь дополнительные значительные затраты на удаление/добавление элемента.

Общая идея такая: завести массив фиксированной длины и придумать функцию, осуществляющую отображение значение ключа записи на множество индексов массива 0...n, где n - размер массива. Обычно размер массива << количества записей, так что отображение получается неоднозначное. Если различные ключи приводят в один и тот же индекс массива, то возикает конфлик. Обычно этот конфлик разруливают таким образом: каждый элемент масива содкржит не одну запись, а список записей. То есть для поиска записи по ключу мы:
а). находим индекс i по хэш-функции
б). перебираем весь список элементов этого индекса для поиска элемента с требуемым ключём.

Большое спасибо, хоть , что-то стало проясняться !
...
Рейтинг: 0 / 0
20.05.2005, 17:18
    #33077811
Интегратор
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
что такое хэширование ?
Ven25

Большое спасибо, хоть , что-то стало проясняться !

Ну совсем то, но может пригодиться ;)
http://www.brpreiss.com/books/opus4/html/book.html
...
Рейтинг: 0 / 0
Форумы / Программирование [игнор отключен] [закрыт для гостей] / что такое хэширование ? / 5 сообщений из 5, страница 1 из 1
Найденые пользователи ...
Разблокировать пользователей ...
Читали форум (0):
Пользователи онлайн (0):
x
x
Закрыть


Просмотр
0 / 0
Close
Debug Console [Select Text]