from random import randint a = [randint(0, 100) for _ in range(10)] print(a) def fast(A, nac, kon): if nac >= kon: return nac1, kon1 = nac, kon sr = A[(nac1 + kon1) // 2] sr1 = int(str(sr)[0]) while nac1 <= kon1: while int(str(A[nac1])[0]) < sr1: nac1 += 1 while int(str(A[kon1])[0]) > sr1: kon1 -= 1 if nac1 <= kon1: A[nac1], A[kon1] = A[kon1], A[nac1] nac1 += 1 kon1 -= 1 fast(A, nac, kon1) fast(A, nac1, kon) fast(a, 0, len(a) - 1) print('Отсортированный массив: ') print(a)