분할을 반복하는 방식
여섯 수를 정렬할 때 기준보다 작은 값과 큰 값을 나누고 각 묶음을 다시 나눌 수 있다. 전체를 한 번에 완성하는 대신 더 작은 문제들을 풀어 순서를 만든다. 피벗과 같은 값의 처리 방식도 구현에서 정해야 한다.
분할의 균형과 연산량
부분들이 비슷한 크기로 나뉘면 재귀적으로 처리할 단계 수를 줄일 수 있다. 반대로 한쪽에 거의 모든 원소가 남는 상황이 반복되면 연산량이 크게 늘어난다. 이름에 빠르다는 의미가 있어도 모든 입력과 구현에서 같은 속도를 보장하는 것은 아니다.
피벗 선택과 변형
피벗을 고르는 방법과 분할 절차에는 여러 방식이 있다. 무작위 선택이나 작은 구간에서 다른 정렬을 쓰는 방법 등으로 동작을 조정할 수 있다. 이런 변형의 성능을 기본적인 퀵 정렬의 성질과 구분해야 한다.
메모리와 같은 값의 순서
배열 내부에서 교환하는 구현은 별도의 큰 배열 없이 동작할 수 있지만 재귀 호출을 위한 공간은 고려해야 한다. 흔한 교환 기반 구현은 같은 키를 가진 원소들의 원래 순서를 보장하지 않는다. 안정성과 보조 공간은 실제 구현을 기준으로 확인한다.