Как-то так может, если не использовать встроенную сортировку. Со встроенной по идее будет быстрее работать, но для собесов например, лучше уметь самому сортировать.
idx = "32 48 2 6 14 58 2 88 9 14 123 48 3 17 42 42 7"
idx_ls = list(map(int, list(idx.split())))
def removing_duplicates(numbers: list[int]) -> list[int]:
unique_numbers = set()
for i in range(len(numbers) - 1):
if numbers[i] not in unique_numbers:
unique_numbers.add(numbers[i])
else:
print(f"Найден дубликат ID {numbers[i]}")
return list(unique_numbers)
def bubble_sort(numbers: list[int]) -> list[int]:
flag = True
while flag:
flag = False
for i in range(len(numbers) - 1):
if numbers[i] > numbers[i+1]:
numbers[i], numbers[i+1] = numbers[i+1], numbers[i]
flag = True
return numbers
def get_ls(numbers: list[int]) -> list[int] | None:
if not numbers:
return
if len(numbers) == 1:
return numbers
numbers = removing_duplicates(numbers)
numbers = bubble_sort(numbers)
return numbers
print(get_ls(idx_ls))