효율적인 정렬 알고리즘: 계수 정렬 예

카운팅 정렬은 간단하고 효율적인 정렬 알고리즘으로 특정 범위 내의 정수를 정렬하는 데 적합합니다. 일반적인 비교 정렬 알고리즘과 비교할 때 카운팅 정렬의 시간 복잡도는 O(n+k)입니다. 여기서 n은 정렬할 요소 수이고 k는 정렬할 요소의 범위입니다. 이 기사에서는 계산 정렬이 구현되는 방법을 살펴보고 Python 코드 예제를 제공합니다.

카운팅 정렬의 원리는 간단합니다. 먼저 정렬할 요소의 범위를 결정하고 각 요소의 발생 횟수를 저장하는 카운팅 배열을 만듭니다. 그런 다음, 누적 계산을 통해 정렬된 배열의 각 요소 위치가 결정됩니다. 마지막으로, 카운팅 배열의 정보에 따라 정렬할 배열의 요소가 정렬된 배열에 순서대로 배치됩니다.

다음은 계산 정렬의 Python 구현 예입니다.

def counting_sort(arr):
    # 确定待排序数组的最大值和最小值
    max_val = max(arr)
    min_val = min(

Supongo que te gusta

Origin blog.csdn.net/DevAstro/article/details/133498535
Recomendado
Clasificación