oop_1 homework
parent
cf0079664e
commit
454773cbbb
|
@ -0,0 +1,42 @@
|
||||||
|
Задача:
|
||||||
|
|
||||||
|
В первой строке вводится одно натуральное число num < 10.
|
||||||
|
|
||||||
|
Во второй строке создается пустой массив.
|
||||||
|
|
||||||
|
На третьей строке массив через цикл for заполняется рандомными натуральными числами < 100. Количество элементов не должно превышать num.
|
||||||
|
|
||||||
|
Отсортируйте массив используя метод “пузырька” по возрастанию.
|
||||||
|
|
||||||
|
Необходимо вывести получившийся массив.
|
||||||
|
|
||||||
|
|
||||||
|
Пример:
|
||||||
|
|
||||||
|
Входные данные:
|
||||||
|
|
||||||
|
>> 5
|
||||||
|
|
||||||
|
--------------------
|
||||||
|
|
||||||
|
>>1
|
||||||
|
|
||||||
|
>>5
|
||||||
|
|
||||||
|
>>8
|
||||||
|
|
||||||
|
>>11
|
||||||
|
|
||||||
|
>>2
|
||||||
|
|
||||||
|
Выходные данные:
|
||||||
|
|
||||||
|
[1, 2, 5, 8, 11]
|
||||||
|
|
||||||
|
|
||||||
|
Этапы выполнения:
|
||||||
|
|
||||||
|
Создайте файл с расширением “.py” и назовите его bubble_sort.
|
||||||
|
Напишите код решения задачи
|
||||||
|
Добавьте комментарии в коде объясняющие ход работы программы.
|
||||||
|
|
|
@ -0,0 +1,44 @@
|
||||||
|
"""
|
||||||
|
Модуль является результатом выполнения практической
|
||||||
|
домашней работы по теме "Повторение. Сортировка"
|
||||||
|
|
||||||
|
В задании указанном в README.md требуется написать алгоритм
|
||||||
|
пузырьковой сортировки над объектом типа list.
|
||||||
|
В библиотеке collections представлен класс UserList,
|
||||||
|
который позволяет кастомизировать стандартный объект
|
||||||
|
list переопределением стандартных или добавлением своих
|
||||||
|
методов оставляя за скобками остальные стандартные методы.
|
||||||
|
Я создал свой class, переопределив метод sort, с использованием
|
||||||
|
пузырьковой сортировки.
|
||||||
|
|
||||||
|
:copyright: Сергей Ванюшкин <pi3c@yandex.ru>
|
||||||
|
:git: https://git.pi3c.ru/pi3c/StudyRepo_Synergy.git
|
||||||
|
:license: MIT
|
||||||
|
2023г.
|
||||||
|
"""
|
||||||
|
|
||||||
|
from collections import UserList
|
||||||
|
|
||||||
|
|
||||||
|
class MyCustomList(UserList):
|
||||||
|
def __init__(self):
|
||||||
|
self.data = []
|
||||||
|
|
||||||
|
def len(self):
|
||||||
|
return self.data.__len__()
|
||||||
|
|
||||||
|
def sort(self):
|
||||||
|
for _ in range(self.len() - 1):
|
||||||
|
for j in range(self.len() - 1):
|
||||||
|
if self.data[j] > self.data[j + 1]:
|
||||||
|
self.data[j], self.data[j + 1] = self.data[j + 1], self.data[j]
|
||||||
|
|
||||||
|
|
||||||
|
arr = MyCustomList()
|
||||||
|
|
||||||
|
for _ in range(int(input("Введите количество элементов списка: "))):
|
||||||
|
arr.append(int(input(f"Введите элемент {_ + 1}: ")))
|
||||||
|
|
||||||
|
print("Введенный список:", arr)
|
||||||
|
arr.sort()
|
||||||
|
print("Отсортированный", arr)
|
Loading…
Reference in New Issue