Получение индекса возвращенного макс. или минимального объекта, использующего макс. () / минута () в списке

buckets = [0] * longest # this will make a list of longest size

Затем создайте список в каждом элементе, и я использую первый элемент списка, чтобы вести подсчет этого сегмента.

for i in range(longest): buckets[i] = [0]

Затем вам нужно добавить слова в ведра.

for L in words: buckets[len(L)][0] += 1 # increasing the count of that bucket buckets[len(L)].append(L) # Adding the word to that bucket

Вот пример:

longest = 10
words = ['this', 'that', 'foremost']
buckets = [0] * longest # this will make a list of longest size 
for i in range(longest):
   buckets[i] = [0]
for L in words:
   buckets[len(L)][0] += 1 # increasing the count of that bucket
   buckets[len(L)].append(L) # Adding the word to that bucket 

Чтобы получить доступ к любому из подсчетов, это просто buckets[number][0] и для доступа ко всем словам, вы цикл, начинающийся с buckets[number][1].

393
задан Amir 12 October 2018 в 04:59
поделиться

3 ответа

if isMinLevel:
    return values.index(min(values))
else:
    return values.index(max(values))
344
ответ дан 22 November 2019 в 23:45
поделиться

Что относительно этого:

a=[1,55,2,36,35,34,98,0]
max_index=dict(zip(a,range(len(a))))[max(a)]

Это создает словарь из объектов в a как ключи и их индексы, поскольку значения, таким образом dict(zip(a,range(len(a))))[max(a)] возвращает значение, которое соответствует ключу max(a), который является индексом максимума в a. Я - новичок в Python, таким образом, я не знаю о вычислительной сложности этого решения.

0
ответ дан 22 November 2019 в 23:45
поделиться

Вы можете найти минимальный / максимальный индекс и значение одновременно, если вы перечисляете элементы в списке, но выполняете минимальное / максимальное значение для исходных значений списка. Примерно так:

import operator
min_index, min_value = min(enumerate(values), key=operator.itemgetter(1))
max_index, max_value = max(enumerate(values), key=operator.itemgetter(1))

Таким образом, список будет просматриваться только один раз для min (или max).

319
ответ дан 22 November 2019 в 23:45
поделиться
Другие вопросы по тегам:

Похожие вопросы: