Este documento explica el algoritmo quicksort, un método de ordenamiento por división y conquista. Se divide el vector a ordenar en dos segmentos usando una función de partición que usa un elemento pivote. Luego se ordenan recursivamente los segmentos resultantes hasta que contienen un solo elemento. El tiempo de ejecución promedio es O(n log n) pero en el peor caso es O(n2). Aunque el peor caso es ineficiente, el comportamiento promedio de quicksort es eficiente, haciéndolo popular.