Strand sort
O Strand sort é um algoritmo de ordenação. Ele trabalha por repetidas vezes extraindo sublistas ordenadas da lista a ser classificada e mesclando-as com um array resultado. Cada iteração através da lista não-ordenada extrai uma série de elementos que já estavam ordenados, e mescla as séries juntas.

O nome do algoritmo vem de "vertentes" de dados ordenados dentro da lista não-ordenada que são removidos um de cada vez. É um algoritmo de ordenação por comparação devido ao seu uso de comparações, quando remove vertentes e ao mesclar-los para o array ordenado.

O algoritmo de ordenação strand é O("n" sqrt "n") no caso médio. No melhor caso (a lista que já está classificado), o algoritmo é linear, ou O("n"). Na pior das hipóteses (a lista que está ordenada em ordem inversa), o algoritmo é O ("n"2).

O Strand sort é mais útil para dados que são armazenados em uma lista vinculada, devido às freqüentes inserções e remoções de dados. Usando uma outra estrutura de dados, como um array, se aumentaa consideravelmente o tempo de execução e a complexidade do algoritmo, devido às longas inserções e deleções. O Strand sort também é útil para dados que já possuem grandes quantidades de dados ordenados, pois esses dados podem ser removidos em uma única vertente.
Q181593
algoritmo de ordenação
Concept
Q2632949
ordenação por comparação
Concept
Q269878
O
Concept
Q4808297
Strand sort
Concept
Q4808297
Strand sort
Concept
Q4808297
Strand sort
Concept
+2^^http://www.w3.org/2001/XMLSchema#decimal
2
NUMBER
instance of