|
|||||||||
Иногда бывает необходимо преобразовать массив чего-либо в хэш-массив. Это можно сделать так:
Например:
Этот оператор преобразует массив ('a', 'b', 'c') в хэш-массив ('a',
1', 'b', 1, 'c', 1) .
Автор: Joseph N. Hall Предположим, мы имеем http log примерно следующего содержания
и нам хочется сделать хэш-массив, состоящий из первых слова каждой строки, а значением
элемента массива - количество повторений этого слова
Этот же фрагмент кода можно переписать и в более пространном виде
Вот еще подобный фрагмент кода
Но в этом случае содержимое всего файла считывается в память (<> в контексте
списка) перед тем, как продолжить вычисления. Это, конечно, неудобно в случае
файла большого размера.
Автор: Joseph N. Hall Инверсия хэш-массива один-к-одному Предположим, мы имеем следующий хэш-массив, содержащий информацию о соответствии IP адресов и символьных имен
Таким образом, используя IP адрес в качестве индекса мы можем получить его символьное
имя. А как сделать наоборот?
В случае хэш-массива с отношением один-к-одному мы получим хэш-массив с обратным
соответствием, т.е. сможем определять IP адрес имея его символьное имя.
Автор: Joseph N. Hall
|
|||||||||
![]() |
![]() |