Форум программистов, компьютерный форум, киберфорум
Python для начинающих
Войти
Регистрация
Восстановить пароль
Блоги Сообщество Поиск Заказать работу  
 
Рейтинг 4.75/4: Рейтинг темы: голосов - 4, средняя оценка - 4.75
1 / 1 / 0
Регистрация: 06.06.2020
Сообщений: 75

Разработка алгоритма

10.06.2022, 23:14. Показов 721. Ответов 1
Метки нет (Все метки)

Студворк — интернет-сервис помощи студентам
Помогите, пожалуйста, реализовать функцию index_of_minimum(numbers: list[int]) -> int,

которая возвращает индекс наименьшего значения в числах. Здесь числа не пусты и сортируются по следующему шаблону: Первая часть списка сортируется в порядке убывания, вплоть до наименьшего элемента в списке. Затем вторая часть списка сортируется в порядке возрастания. Длина двух частей (и, следовательно, положение наименьшего элемента) неизвестна — это не первая и не вторая половина списка. Однако ни один из разделов не может быть пустым, т.е. наименьший элемент не может быть первым или последним элементом списка (поэтому список также содержит не менее трех элементов). Кроме того, одно и то же число никогда не встречается в списке дважды подряд.

Python
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
def index_of_minimum(numbers: list[int]) -> int:
     """
         Асимптотическое время работы в наихудшем случае: O(log(len(numbers)))
         Предположения: числа сортируются, как описано в листе, и len(числа) >= 1
     """
    # TODO: implement
    pass
 
 
def exercise1():
    print(index_of_minimum([6, 4, 2, 0, 1, 3, 5]))
    print(index_of_minimum([4, 3, 2, 1, 0, 1, 2, 3, 4]))
    print(index_of_minimum([1, 0, 2, 3, 4, 5, 6]))
    print(index_of_minimum([7, 0, 7]))
    print(index_of_minimum([4, -4, 0, 1, 2, 3]))
    print(index_of_minimum([3, 2, 1, 0, -4, 4]))
Code
1
2
3
4
5
6
index_of_minimum([6, 4, 2, 0, 1, 3, 5]) возвращает  3 
index_of_minimum([4, 3, 2, 1, 0, 1, 2, 3, 4]) возвращает 4 
index_of_minimum([1, 0, 2, 3, 4, 5, 6]) возвращает 1 
index_of_minimum([7, 0, 7]) возвращает 1 
index_of_minimum([4, -4, 0, 1, 2, 3]) возвращает 1 
index_of_minimum([3, 2, 1, 0, -4, 4]) возвращает 4
0
Лучшие ответы (1)
IT_Exp
Эксперт
34794 / 4073 / 2104
Регистрация: 17.06.2006
Сообщений: 32,602
Блог
10.06.2022, 23:14
Ответы с готовыми решениями:

Разработка программ с использованием алгоритма сортировки методами выбора и пузырька
Задать два массива по 5 целых чисел. Отсортировать оба массива: первый – по убыванию методом пузырька, второй – по возрастанию методом...

Разработка алгоритма, обнаруживающего в массиве все пары целых чисел, сумма которых равна заданному значению
Ограничение времени 1.5 секунд Ограничение памяти 64Mb Ввод input.txt Вывод output.txt Дано целое положительное число...

Разработка алгоритма
Составить программу с консольным интерфейсом (среда Eclipse, язык Java), реализующую - ввод исходных данных, - соответствующий...

1
Эксперт Python
8851 / 4502 / 1864
Регистрация: 27.03.2020
Сообщений: 7,317
10.06.2022, 23:32
Лучший ответ Сообщение было отмечено MelchiorxD как решение

Решение

MelchiorxD,
Python
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
def index_of_minimum(lst):
    left = 0
    right = len(lst) - 1
    while True:
        m = (left+right)//2
        if lst[m-1]<lst[m]<lst[m+1]:
            right = m 
        elif lst[m-1]>lst[m]>lst[m+1]:
            left = m 
        else:
            return m
 
 
"""
         Асимптотическое время работы в наихудшем случае: O(log(len(numbers)))
         Предположения: числа сортируются, как описано в листе, и len(числа) >= 1
"""
 
 
def exercise1():
    print(index_of_minimum([6, 4, 2, 0, 1, 3, 5]))
    print(index_of_minimum([4, 3, 2, 1, 0, 1, 2, 3, 4]))
    print(index_of_minimum([1, 0, 2, 3, 4, 5, 6]))
    print(index_of_minimum([7, 0, 7]))
    print(index_of_minimum([4, -4, 0, 1, 2, 3]))
    print(index_of_minimum([3, 2, 1, 0, -4, 4]))
 
exercise1()
1
Надоела реклама? Зарегистрируйтесь и она исчезнет полностью.
BasicMan
Эксперт
29316 / 5623 / 2384
Регистрация: 17.02.2009
Сообщений: 30,364
Блог
10.06.2022, 23:32
Помогаю со студенческими работами здесь

Разработка алгоритма
Собственно задание следующее 1 Производить обработку кадра 0DH 2 Определить координаты спутника 3 Производить расчет координат...

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

Разработка алгоритма
Составить программу с консольным интерфейсом (среда Eclipse, язык Java), реализующую - ввод исходных данных, - соответствующий...

Разработка алгоритма 2
РАзработать алгоритм,определяющий принадлежит ли точка плоскости.Точку и плоскость задать в виде структур.Необходимые координаты взять из...

Шашки, разработка алгоритма
Доброго времени суток! В уч.заведении задали сделать работу, вот её содержание: &quot;Разработка программы анализа позиции на шашечной...


Искать еще темы с ответами

Или воспользуйтесь поиском по форуму:
2
Ответ Создать тему
Новые блоги и статьи
SDL3 для Desktop (MinGW): Рисуем цветные прямоугольники с помощью рисовальщика SDL3 на Си и C++
8Observer8 17.03.2026
Содержание блога Финальные проекты на Си и на C++: finish-rectangles-sdl3-c. zip finish-rectangles-sdl3-cpp. zip
Символические и жёсткие ссылки в Linux.
algri14 15.03.2026
Существует два типа ссылок — символические и жёсткие. Ссылка в Linux — это запись в каталоге, которая может указывать либо на inode «файла-ИСТОЧНИКА», тогда это будет «жёсткая ссылка» (hard link),. . .
[Owen Logic] Поддержание уровня воды в резервуаре количеством включённых насосов: моделирование и выбор регулятора
ФедосеевПавел 14.03.2026
Поддержание уровня воды в резервуаре количеством включённых насосов: моделирование и выбор регулятора ВВЕДЕНИЕ Выполняя задание на управление насосной группой заполнения резервуара,. . .
делаю науч статью по влиянию грибов на сукцессию
anaschu 13.03.2026
прикрепляю статью
SDL3 для Desktop (MinGW): Создаём пустое окно с нуля для 2D-графики на SDL3, Си и C++
8Observer8 10.03.2026
Содержание блога Финальные проекты на Си и на C++: hello-sdl3-c. zip hello-sdl3-cpp. zip Результат:
Установка CMake и MinGW 13.1 для сборки С и C++ приложений из консоли и из Qt Creator в EXE
8Observer8 10.03.2026
Содержание блога MinGW - это коллекция инструментов для сборки приложений в EXE. CMake - это система сборки приложений. Здесь описаны базовые шаги для старта программирования с помощью CMake и. . .
Как дизайн сайта влияет на конверсию: 7 решений, которые реально повышают заявки
Neotwalker 08.03.2026
Многие до сих пор воспринимают дизайн сайта как “красивую оболочку”. На практике всё иначе: дизайн напрямую влияет на то, оставит человек заявку или уйдёт через несколько секунд. Даже если у вас. . .
Модульная разработка через nuget packages
DevAlt 07.03.2026
Сложившийся в . Net-среде способ разработки чаще всего предполагает монорепозиторий в котором находятся все исходники. При создании нового решения, мы просто добавляем нужные проекты и имеем. . .
КиберФорум - форум программистов, компьютерный форум, программирование
Powered by vBulletin
Copyright ©2000 - 2026, CyberForum.ru