Radix 정렬은 버킷 정렬을 일반화한 것으로, 정렬할 레코드에 둘 이상의 키워드가 포함되어 있다고 생각합니다. 기수 정렬은 정렬 효과를 얻기 위해 정렬할 요소를 할당하는 "분산 정렬"입니다. 특정 "버킷"에서는 기수 정렬 방법이 안정적인 정렬 방법입니다.
Radix 정렬
Radix 정렬은 버킷 정렬을 일반화한 것으로 간주되는 레코드에 둘 이상의 키워드가 포함되어 있습니다.
소개:
Radix 정렬은 "버킷 정렬" 또는 bin 정렬이라고도 알려진 "분포 정렬"입니다. 이름에서 알 수 있듯이 키 값의 부분 정보를 사용하여 특정 "버킷"으로 정렬할 요소를 할당합니다. 기수 정렬 방법은 안정적인 정렬이며 시간 복잡도는 O(nlog(r)m)입니다. 여기서 r은 기수 번호이고 m은 특정 시간의 힙 번호입니다. , 기수 정렬 방법은 다른 안정성 정렬 방법보다 더 효율적입니다.
구현 방법
MSD 방법이라고 하는 가장 중요한 숫자 우선 방법: 먼저 그룹을 k1로 정렬하고, 동일한 그룹에 기록하고, 키 코드 k1이 동일한 다음, 각 그룹을 k2로 정렬하고 하위 그룹으로 나눕니다. 그 후, 각 하위 그룹이 가장 낮은 키 코드 kd에 따라 정렬될 때까지 후속 키 코드에 대해 이 정렬 및 그룹화를 계속합니다. 그런 다음 그룹을 연결하여 순서가 지정된 순서를 얻습니다.
최하위 숫자 우선(줄여서 LSD 방법): kd부터 정렬을 시작한 다음 kd-1을 정렬하고 k1이 정렬되어 순서가 지정된 시퀀스를 얻을 때까지 반복합니다.
위 내용은 기수 정렬이란 무엇입니까?의 상세 내용입니다. 자세한 내용은 PHP 중국어 웹사이트의 기타 관련 기사를 참조하세요!