Quick Sort Paralelo

QuickSortParalelo(lista)

if (lista.tamaño == 1) return lista[0]

pivote = posición aleatoria de lista

listas = listasParalelo(lista,pivote)

listaIzquierda = listas[0]

listaDerecha = listas[1]

hacer en paralelo:

listaIzquierda = QuickSortParalelo(listaIzquierda)

listaIzquierda = QuickSortParalelo(listaDerecha)

return listaIzquierda + listaDerecha

listasParalelo(lista,pivote)

listaDeListas listas

hacer en paralelo:

añadir elementos de lista <= pivote a listas[0]

añadir elementos de lista > pivote a listas[1]

return listas