База ответов ИНТУИТ

Инструменты, алгоритмы и структуры данных

<<- Назад к вопросам

Эффективность работы с хеш-таблицами зависит от выбора хеш-функции (степени ее совершенства) и от способа разрешения конфликтов при совпадении значений. Укажите, как разрешаются конфликты в Eiffel библиотечном классе HASH_TABLE?

(Отметьте один правильный вариант ответа.)

Варианты ответа
хеш-таблица представляется массивом. Когда возникает коллизия, то выполняется последовательный перебор элементов массива в поисках первой свободной ячейки, куда и записывается пришедший элемент
хеш-таблица представляется массивом. Когда возникает коллизия, то в поисках первой свободной ячейки выполняется перебор элементов массива с некоторым шагом, вычисление значения которого определяется с помощью хеш-функции(Верный ответ)
хеш-таблица представляется массивом. Когда возникает коллизия, изменяетсяключ элемента, получая значение ключа свободной ячейки массива
хеш-функция выдает индекс элемента массива, содержащего ссылку на список, в который помещаются все элементы с одинаковым значением индекса
Похожие вопросы
Какие из операций над хеш-таблицами в классе HASH_TABLE имеют временную сложность O(count), а не O(1)?
В языке Eiffel для работы с массивами используется библиотечный класс ARRAY, являющийся универсальным классом. Какие объявления массивов являются корректными, полагая, что существуют классы INTEGER, REAL, STUDENT?
Пусть задано объявление объекта кортежного типа: stud1:TUPLE[who: STUDENT; facultet: STRING; group: INTEGER), пусть также уже создан объект petrov класса STUDENT. Укажите корректные фрагменты Eiffel кода, полагая, что они записаны пв последовательном порядке:
Классы ARRAY и LIST являются универсальными классами с одним родовым параметром. Класс STUDENT является обычным классом. Какие объявления являются корректными в языке Eiffel?
При компоновке системы командой make системы Unix описание компоновки задается с помощью зависимостей вида target: source1, …, source. Данная зависимость говорит, что цель target зависит от нескольких источников. Укажите, в каких случаях зависимость будет применяться, перестраивая цель target?
В классе ARRAY для чтения элемента массива существует запрос item(i:INTEGER), для записи - команда put(v: like item; i: INTEGER). Какое предусловие задается для item и put?
В класс ARRAY добавлен "синтаксический сахар", позволяющий наряду с чтением и записью элементов массива в объектном стиле использовать и привычную скобочную запись. Отметьте допустимые фрагменты кода Eiffel при работе с массивом ar:
Какие утверждения справедливы для метода force при работе с массивами в Eiffel?
Рассмотрим контейнерный класс, в котором метод вставки элементов put имеет следующую сигнатуру: put (key:STRING; i: G), где key - ключ элемента, i - сам элемент. Какие постусловия должны включаться для этого метода?
Пусть метод p вызывает метод q, тот вызывает метод r с косвенной рекурсией, - метод r вызывает метод s, который в свою очередь вызывает метод r. Какие утверждения справедливы относительно процесса вызова методов?