Escolar Documentos
Profissional Documentos
Cultura Documentos
“
Insira a string (250 char):
Esta frase ira provar a eficiencia do programa! abcdefghijklmnopqrstuvwxyzABCDE
FGHIJKLMNOPQRSTUVWXYZ1234567890/*-+!?[]{}
Vetor:
Esta frase ira provar a eficiencia do pr
ograma! abcdefghijklmnopqrstuvwxyzABCDEF
GHIJKLMNOPQRSTUVWXYZ1234567890/*-+!?[]{}
Arvore:
!*+-/0123456789?ABCDEFGHIJKLMNOPQRSTUVW
XYZ[]abcdefghijklmnopqrstuvwxyz{}
Vetor:
Esta frase ira provar a eficiencia do pr
ograma! abcdefghijklmnopqrstuvwxyzABCDEF
GHIJKLMNOPQRSTUVWXYZ1234567890/*-+!?[]{}
HeapSort:
!!*+-/0123456789?ABCDEEFGHIJKLMN
OPQRSTUVWXYZ[]aaaaaaaaabcccddeeeefffgghi
iiiijklmmnnoooopppqrrrrrrrsssttuvvwxyz{}
Vetor:
Esta frase ira provar a eficiencia do pr
ograma! abcdefghijklmnopqrstuvwxyzABCDEF
GHIJKLMNOPQRSTUVWXYZ1234567890/*-+!?[]{}
QuickSort:
!!*+-/0123456789?ABCDEEFGHIJKLMN
OPQRSTUVWXYZ[]aaaaaaaaabcccddeeeefffgghi
iiiijklmmnnoooopppqrrrrrrrsssttuvvwxyz{}
Vetor:
Esta frase ira provar a eficiencia do pr
ograma! abcdefghijklmnopqrstuvwxyzABCDEF
GHIJKLMNOPQRSTUVWXYZ1234567890/*-+!?[]{}
MergeSort:
!!*+-/0123456789?ABCDEEFGHIJKLMN
OPQRSTUVWXYZ[]aaaaaaaaabcccddeeeefffgghi
iiiijklmmnnoooopppqrrrrrrrsssttuvvwxyz{}
Fim do programa.
I) Árvore binária:
“
Insira a string (250 char):
Arvore:
!*+-/0123456789?ABCDEFGHIJKLMNOPQRSTUVW
XYZ[]abcdefghijklmnopqrstuvwxyz{}
QuickSort:
!!*+-/0123456789?ABCDEEFGHIJKLMN
OPQRSTUVWXYZ[]aaaaaaaaabcccddeeeefffgghi
iiiijklmmnnoooopppqrrrrrrrsssttuvvwxyz{}
HeapSort:
!!*+-/0123456789?ABCDEEFGHIJKLMN
OPQRSTUVWXYZ[]aaaaaaaaabcccddeeeefffgghi
iiiijklmmnnoooopppqrrrrrrrsssttuvvwxyz{}
MergeSort:
!!*+-/0123456789?ABCDEEFGHIJKLMN
OPQRSTUVWXYZ[]aaaaaaaaabcccddeeeefffgghi
iiiijklmmnnoooopppqrrrrrrrsssttuvvwxyz{}
i) Mergesort (0.234s);
ii) Heapsort (0.125s);
iii) Quicksort (0.016s).
No entanto, vale lembrar que, embora Quicksort seja mais rápido, ele é menos
seguro; quanto mais rápido é a ordenação, mais inseguro é o processo (ressaltando
aqui que o processo por árvore binária foi utilizado apenas como referência). Segue
abaixo os algoritmos em ordem crescente de segurança:
i) Quicksort;
ii) Heapsort;
iii) Mergesort.
Mergesort é mais seguro, pois usa alocação dinâmica de memória para realizar a
ordenação, o que deixa o processo extremamente seguro, porém há um alto consumo
de memória e consequentemente requer maior tempo para realizar a tarefa.
Quicksort é o tipo de alocação mais eficiente, porém com menor segurança. O motivo
de tal acontecimento é porque ela trabalha com diversas funções “simultâneas”,
chamando a própria função (Quicksort) dentro dela mesma para dividir e ordenar a string.
Isso ocasiona uma alta movimentação na memória, que pode ocasionar erros de
gravação ou leitura.