Эффективность алгоритма Python - PullRequest
1 голос
/ 11 декабря 2010

Скажем, у вас есть 32000 записей с 89 байтами / запись, сохраненная в файле TSV.

Вы вставляете это в словарь Python или хэш Ruby и индексируете 9-байтовым ключом, который сам является полем в каждой записи. Другими словами, у вас есть словарь с 32000 пар ключ-значение, где каждый ключ составляет 9 байтов, а каждое значение - 89 байтов. На современном компьютере, таком как 2,4 ГГц Macbook Pro, какова приблизительная оценка среднего времени, необходимого для извлечения записи, и каков наихудший случай в тета-записи? Реализация в Ruby медленнее, чем в Python?

1 Ответ

4 голосов
/ 11 декабря 2010

Словарь обычно может извлекать ключи в постоянное время, поэтому ответ на ваш вопрос «очень быстрый».

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

Является ли реализация в Ruby более медленной, чем в Python?

Ruby обычно медленнее в тестах производительности, чем Python, с небольшим коэффициентом,Я ожидаю, что, вероятно, и здесь это так.

Игра по тестированию языков программирования - Ruby vs Python

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...