Как мне пересмотреть новый стержень, чтобы он повторно выполнял оператор if? - PullRequest
0 голосов
/ 19 ноября 2018

Я пытаюсь создать алгоритм быстрой сортировки. Когда я запускаю этот код, это бесконечный цикл, который сводит все меньше и меньше. Тем не менее, номер сводки будет меньше, чем элемент в массиве. Мне нужно, чтобы он пересмотрел свой топ-оператор if, чтобы проверить, меньше или меньше число разворота.

new_numbers = [23, 76, -18, -83, 1, 34, 19, 24, 1312, 56, -123, 52, -5, -22, 44, 16]
pivot = len(new_numbers)-1
while 1 == 1:
    pivot = pivot
    if any(new_numbers[pivot] < item for item in new_numbers[:pivot]):
        increment = 0
        for i in range(pivot):
            if new_numbers[i] < new_numbers[pivot]:
                new_numbers[increment], new_numbers[i] = new_numbers[i], new_numbers[increment]
                increment=increment + 1
        new_numbers[increment],new_numbers[pivot] = new_numbers[pivot],new_numbers[increment]
    elif any(new_numbers[pivot] >= item for item in new_numbers[:pivot]):
        pivot = increment - 1
        if any(new_numbers[pivot] >= item for item in new_numbers[:pivot]):
            increment -= 1
            pivot = increment - 1
print(new_numbers)
Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...