이 기사에서는 아래 주어진 문제 설명에 대한 솔루션에 대해 알아볼 것입니다.
문제 설명 − 배열이 주어졌으므로 벽돌 정렬을 사용하여 정렬해야 합니다.
여기에는 홀수 단계와 짝수 단계의 두 단계가 있습니다. 홀수 단계에서는 인덱스가 홀수인 요소에 대해 버블 정렬이 수행되고 짝수 단계에서는 인덱스가 짝수인 요소에 대해 버블 정렬이 수행됩니다.
이제 아래 구현에서 솔루션을 살펴보겠습니다-
예
def oddEvenSort(arr, n): # flag isSorted = 0 while isSorted == 0: isSorted = 1 temp = 0 for i in range(1, n-1, 2): if arr[i] > arr[i+1]: arr[i], arr[i+1] = arr[i+1], arr[i] isSorted = 0 for i in range(0, n-1, 2): if arr[i] > arr[i+1]: arr[i], arr[i+1] = arr[i+1], arr[i] isSorted = 0 return arr = [1,4,2,3,6,5,8,7] n = len(arr) oddEvenSort(arr, n) print(“Sorted sequence is:”) for i in range(0, n): print(arr[i], end =" ")
출력
Sorted sequence is: 1 2 3 4 5 6 7 8
모든 변수는 로컬 범위에서 선언되며 해당 참조는 위 그림과 같습니다.
결론
이 기사에서는 홀수-짝수 정렬/브릭 정렬을 위한 Python 프로그램을 만드는 방법에 대해 배웠습니다.