Как можно ускорить поиск слов Python Scrabble? ⇐ Python

Программы на Python
Anonymous
Как можно ускорить поиск слов Python Scrabble?

Сообщение Anonymous »

У меня нет особой необходимости улучшать его, это просто для развлечения. Прямо сейчас это занимает около секунды для списка из примерно 200 тысяч слов.

Я пытался оптимизировать его настолько, насколько мог (используя генераторы вместо генераторов списков). имело большое значение), и у меня закончились идеи.

Есть ли у вас?

#!/usr/bin/env python
# let's cheat at scrabble

def count_letters(word):
count = {}
for letter in word:
if letter not in count: count[letter] = 0
count[letter] += 1
return count

def spellable(word, rack):
word_count = count_letters(word)
rack_count = count_letters(rack)
return all( [word_count[letter] 1 and spellable(word, rack))

for score, word in sorted(scored):
print str(score), '\t', word


Подробнее здесь: https://stackoverflow.com/questions/548 ... ade-faster

Вернуться в «Python»