tenho um vetor de uns 100000 números, por exemplo. quero dividir este vetor em pedaços (um sub vetor com 4555 números, um com 15000 números, etc) e distribuír estes pedaços para que sejam ordenados em diferentes nódos. Depois o processo que originou este vetor deve receber estes pedaços, juntar tudo e fazer a ordenação final. que algoritmo de ordenação é mais indicado neste caso?
Use qualquer algorítmo eficiente de ordenação de arrays (ex: bubble sorte, quick sort, etc). Agora, são outros 500 distribuir os dados e receber de volta.
Realmente você pode usar qualquer algoritmo para ordenar os pedacinhos, mas o que você vai fazer no final para juntar é a definição de mergesort.
Qual algoritmo é ineficiente então?
Para mim, um algorítmo é ineficiente quando: ou não faz o seu trabalho, ou deixa a desejar, seja em performance ou resultados.
É Daniel, tem razão. As vezes eu fico meio bitolado em complexidades e tempo de execução. Tenho que incoporar mais o : “Antes uma solução do que nenhuma!” :mrgreen: