Вам необходимо просуммировать суммы транзакций, сгруппированные по счетам (счет — это строка), из журнала, содержащего timestamp, account, amount. Какая структура данных обеспечивает наиболее эффективную агрегацию по каждому счету?
Выберите ответ
Нажмите на вариант, чтобы проверить свой ответ.
Правильный ответ: Хеш-таблица.
Почему это правильный ответ
Хеш-таблица (или ассоциативный массив) является наиболее эффективной структурой данных для агрегации по счетам. Она позволяет хранить пары "ключ-значение", где ключом будет уникальный идентификатор счета (строка), а значением — текущая сумма транзакций для этого счета. Добавление новой транзакции или обновление существующей суммы происходит со средней временной сложностью O(1), что значительно быстрее по сравнению с другими вариантами. Связный список не подходит, так как для поиска счета потребуется линейный перебор (O(n)). Двумерный массив также неэффективен, поскольку поиск по строковому идентификатору счета будет медленным, а изменение размера массива может быть затратным. Строка, разделенная запятыми, является форматом хранения данных, а не структурой для эффективной агрегации; для обработки потребуется парсинг и поиск, что крайне неэффективно.
Сдайте экзамен — без бесконечного поиска ответов
Получите все проверенные вопросы и объяснения для этого экзамена в одном месте и сэкономьте часы подготовки. 1000+ сертификаций · 20+ языков · начните бесплатно.
Сдайте экзамен быстрее → Карта не требуется