SlideShare uma empresa Scribd logo
Discentes: Eduardo Dal Molin Kleber Berhend Willian (ED) Métodos  de Ordenação
Definição de Merge Sort!!  ,[object Object],[object Object]
Exemplo de Merge Sort 38 16 27 27 12 39 27 38 16 27 39 12 38 16 27 39 12 27 38 16 39 12 38 16 39 12 38 16 27 39 12 27 12 16 27 27 38 39 Chamada recursiva ao Merge Sort Passos do Merge Sort
Vantagens e Desvantagens
Complexidade ,[object Object]
Implementação em C Void merge (int M[5o], int inicio, int fim) { int meio; comparações[3]++; if (inicio < fim) { meio = ((inicio + fim)/2); merge (M, inicio, meio); merge (M, meio+1, fim); intercala (M, inicio, meio, fim); } }
void intercala (int M[50], int inicio, int fim) { int primeiro, res, segundo, k; int C[]50; primeiro = res = inicio; segundo = meio + 1; while (primeiro <= meio && segundo <= fim) { comparacoes[3]++; if (M[primeiro] <= M[segundo]) { atribuicoes [3]++; C[res]= M[primeiro]; primeiro++; }
else { atribuicoes[3]++; C[res] = M[segundo]; segundo++; } res++; } comparacoes[3]++; if (primeiro > meio) for (k=segundo; k<=meio; k++) { atribuicoes[3]++; C[res] = M[k]; res++; }
else for (k=primeiro; k<=meio; k++) { atribuicoes[3]++; C[res] = M[k]; res++; } for (k=inicio; k<=fim; k++) M[k] = C[k]; }
BIN SORT
Idéia Geral ,[object Object]
Exemplo 3 2 1 3 3 2 -1 2 3 -1 -1 1 -1 -1 -1 1 2 3 Aux[2] Aux[1] Aux[0] X[2] X[1] X[0] Varredura
Tempo De Execução ,[object Object]
Implementação #define n ‘k’-’a’ +1; Void binsort(apitem *lista , int size){ apitem v[n]; for(i = 0; i <  n; i ++)  v[i] = NULL; for(i = size - 1; i > = 0; i --){ while((p = removefirst(lista))!= NULL) insert (p ,&v[p -> info[i] – ‘a’); for(j = 0;j > n; j ++) concat(lista,&v[j]); } }
.  (próximo slide).   FIM DO THE END

Mais conteúdo relacionado

Mais procurados

1 dízimas periódicas (1)
1   dízimas periódicas (1)1   dízimas periódicas (1)
1 dízimas periódicas (1)
Alexis Teixeira
 
1 gabarito 7ªa e 8
1 gabarito 7ªa e 81 gabarito 7ªa e 8
1 gabarito 7ªa e 8
Juliana Malta de Sousa
 
Algebra linear
Algebra linearAlgebra linear
Algebra linear
Adersom Carvalho
 
Conjuntos numéricos
Conjuntos numéricosConjuntos numéricos
Conjuntos numéricos
Fernanda Pires
 
Lista 4
Lista 4Lista 4
Actividad de números enteros
Actividad de números enterosActividad de números enteros
Actividad de números enteros
luisminichowski
 
Simulado Geometria Analítica Plana: Retas
Simulado Geometria Analítica Plana: RetasSimulado Geometria Analítica Plana: Retas
Simulado Geometria Analítica Plana: Retas
anaflaviagreco
 
Trigonometria lista 3
Trigonometria   lista 3Trigonometria   lista 3
Trigonometria lista 3
Maria Bia
 
Expressões Numéricas com Expoentes
Expressões Numéricas com ExpoentesExpressões Numéricas com Expoentes
Expressões Numéricas com Expoentes
Pense Resolva
 
1 exercícios de potenciação
1  exercícios de potenciação1  exercícios de potenciação
1 exercícios de potenciação
Gabriela Andrade
 
1 exercícios de potenciação
1  exercícios de potenciação1  exercícios de potenciação
1 exercícios de potenciação
Thiago Garcia
 
Circunferência - posições relativas
Circunferência - posições relativasCircunferência - posições relativas
Circunferência - posições relativas
Gabriela Maretti
 
Estudo Dos Intervalos
Estudo Dos IntervalosEstudo Dos Intervalos
Estudo Dos Intervalos
Antonio Carneiro
 
15022014
1502201415022014
Estudo AnalíTico Da CircunferêNcia
Estudo AnalíTico Da CircunferêNciaEstudo AnalíTico Da CircunferêNcia
Estudo AnalíTico Da CircunferêNcia
guest1652ff
 
Estudo dos intervalos
Estudo dos intervalosEstudo dos intervalos
Estudo dos intervalos
Kievnny Mendonca
 
Discreta1
Discreta1Discreta1
Cord.polares
Cord.polaresCord.polares
Cord.polares
Freddie Duarte
 
1 gabarito 7ªa e 8
1 gabarito 7ªa e 81 gabarito 7ªa e 8
1 gabarito 7ªa e 8
Juliana Malta de Sousa
 

Mais procurados (19)

1 dízimas periódicas (1)
1   dízimas periódicas (1)1   dízimas periódicas (1)
1 dízimas periódicas (1)
 
1 gabarito 7ªa e 8
1 gabarito 7ªa e 81 gabarito 7ªa e 8
1 gabarito 7ªa e 8
 
Algebra linear
Algebra linearAlgebra linear
Algebra linear
 
Conjuntos numéricos
Conjuntos numéricosConjuntos numéricos
Conjuntos numéricos
 
Lista 4
Lista 4Lista 4
Lista 4
 
Actividad de números enteros
Actividad de números enterosActividad de números enteros
Actividad de números enteros
 
Simulado Geometria Analítica Plana: Retas
Simulado Geometria Analítica Plana: RetasSimulado Geometria Analítica Plana: Retas
Simulado Geometria Analítica Plana: Retas
 
Trigonometria lista 3
Trigonometria   lista 3Trigonometria   lista 3
Trigonometria lista 3
 
Expressões Numéricas com Expoentes
Expressões Numéricas com ExpoentesExpressões Numéricas com Expoentes
Expressões Numéricas com Expoentes
 
1 exercícios de potenciação
1  exercícios de potenciação1  exercícios de potenciação
1 exercícios de potenciação
 
1 exercícios de potenciação
1  exercícios de potenciação1  exercícios de potenciação
1 exercícios de potenciação
 
Circunferência - posições relativas
Circunferência - posições relativasCircunferência - posições relativas
Circunferência - posições relativas
 
Estudo Dos Intervalos
Estudo Dos IntervalosEstudo Dos Intervalos
Estudo Dos Intervalos
 
15022014
1502201415022014
15022014
 
Estudo AnalíTico Da CircunferêNcia
Estudo AnalíTico Da CircunferêNciaEstudo AnalíTico Da CircunferêNcia
Estudo AnalíTico Da CircunferêNcia
 
Estudo dos intervalos
Estudo dos intervalosEstudo dos intervalos
Estudo dos intervalos
 
Discreta1
Discreta1Discreta1
Discreta1
 
Cord.polares
Cord.polaresCord.polares
Cord.polares
 
1 gabarito 7ªa e 8
1 gabarito 7ªa e 81 gabarito 7ªa e 8
1 gabarito 7ªa e 8
 

Semelhante a Apresentação1

Algorítimo de ordenação
Algorítimo de ordenaçãoAlgorítimo de ordenação
Algorítimo de ordenação
Cristiane Acácio Rosa
 
Tdc2010
Tdc2010Tdc2010
Aula 5
Aula 5 Aula 5
Matematica
MatematicaMatematica
Matematica
Cleuvânia Dias
 
Matematica eja
Matematica ejaMatematica eja
Matematica eja
Marlei Bento
 
Introdução ao MATLAB
Introdução ao MATLABIntrodução ao MATLAB
Introdução ao MATLAB
CaioTelefonica
 
Apostila matemática básica 2
Apostila matemática básica 2Apostila matemática básica 2
Apostila matemática básica 2
waynemarques
 
19 algoritmos de enumeracao
19   algoritmos de enumeracao19   algoritmos de enumeracao
19 algoritmos de enumeracao
Ricardo Bolanho
 
Apostila revisao de matematica
Apostila    revisao de matematicaApostila    revisao de matematica
Apostila revisao de matematica
Alexandre Junqueira
 
14 algoritmos de classificacao de tabelas
14   algoritmos de classificacao de tabelas14   algoritmos de classificacao de tabelas
14 algoritmos de classificacao de tabelas
Ricardo Bolanho
 
9 structs e ponteiros
9   structs e ponteiros9   structs e ponteiros
9 structs e ponteiros
Ricardo Bolanho
 
Apostila eja-matematica-basica-medio-2012
Apostila eja-matematica-basica-medio-2012Apostila eja-matematica-basica-medio-2012
Apostila eja-matematica-basica-medio-2012
Marciano Santos
 
7 slides
7 slides7 slides
7 slides
Delano Beder
 
Linguagem c wellington telles - aula 06
Linguagem c   wellington telles - aula 06Linguagem c   wellington telles - aula 06
Linguagem c wellington telles - aula 06
profwtelles
 
Algoritmo e estruturas de dados operações com matrizes
Algoritmo e estruturas de dados operações com matrizesAlgoritmo e estruturas de dados operações com matrizes
Algoritmo e estruturas de dados operações com matrizes
RADILSON RIPARDO DE FRETIAS
 

Semelhante a Apresentação1 (15)

Algorítimo de ordenação
Algorítimo de ordenaçãoAlgorítimo de ordenação
Algorítimo de ordenação
 
Tdc2010
Tdc2010Tdc2010
Tdc2010
 
Aula 5
Aula 5 Aula 5
Aula 5
 
Matematica
MatematicaMatematica
Matematica
 
Matematica eja
Matematica ejaMatematica eja
Matematica eja
 
Introdução ao MATLAB
Introdução ao MATLABIntrodução ao MATLAB
Introdução ao MATLAB
 
Apostila matemática básica 2
Apostila matemática básica 2Apostila matemática básica 2
Apostila matemática básica 2
 
19 algoritmos de enumeracao
19   algoritmos de enumeracao19   algoritmos de enumeracao
19 algoritmos de enumeracao
 
Apostila revisao de matematica
Apostila    revisao de matematicaApostila    revisao de matematica
Apostila revisao de matematica
 
14 algoritmos de classificacao de tabelas
14   algoritmos de classificacao de tabelas14   algoritmos de classificacao de tabelas
14 algoritmos de classificacao de tabelas
 
9 structs e ponteiros
9   structs e ponteiros9   structs e ponteiros
9 structs e ponteiros
 
Apostila eja-matematica-basica-medio-2012
Apostila eja-matematica-basica-medio-2012Apostila eja-matematica-basica-medio-2012
Apostila eja-matematica-basica-medio-2012
 
7 slides
7 slides7 slides
7 slides
 
Linguagem c wellington telles - aula 06
Linguagem c   wellington telles - aula 06Linguagem c   wellington telles - aula 06
Linguagem c wellington telles - aula 06
 
Algoritmo e estruturas de dados operações com matrizes
Algoritmo e estruturas de dados operações com matrizesAlgoritmo e estruturas de dados operações com matrizes
Algoritmo e estruturas de dados operações com matrizes
 

Apresentação1

  • 1. Discentes: Eduardo Dal Molin Kleber Berhend Willian (ED) Métodos de Ordenação
  • 2.
  • 3. Exemplo de Merge Sort 38 16 27 27 12 39 27 38 16 27 39 12 38 16 27 39 12 27 38 16 39 12 38 16 39 12 38 16 27 39 12 27 12 16 27 27 38 39 Chamada recursiva ao Merge Sort Passos do Merge Sort
  • 5.
  • 6. Implementação em C Void merge (int M[5o], int inicio, int fim) { int meio; comparações[3]++; if (inicio < fim) { meio = ((inicio + fim)/2); merge (M, inicio, meio); merge (M, meio+1, fim); intercala (M, inicio, meio, fim); } }
  • 7. void intercala (int M[50], int inicio, int fim) { int primeiro, res, segundo, k; int C[]50; primeiro = res = inicio; segundo = meio + 1; while (primeiro <= meio && segundo <= fim) { comparacoes[3]++; if (M[primeiro] <= M[segundo]) { atribuicoes [3]++; C[res]= M[primeiro]; primeiro++; }
  • 8. else { atribuicoes[3]++; C[res] = M[segundo]; segundo++; } res++; } comparacoes[3]++; if (primeiro > meio) for (k=segundo; k<=meio; k++) { atribuicoes[3]++; C[res] = M[k]; res++; }
  • 9. else for (k=primeiro; k<=meio; k++) { atribuicoes[3]++; C[res] = M[k]; res++; } for (k=inicio; k<=fim; k++) M[k] = C[k]; }
  • 11.
  • 12. Exemplo 3 2 1 3 3 2 -1 2 3 -1 -1 1 -1 -1 -1 1 2 3 Aux[2] Aux[1] Aux[0] X[2] X[1] X[0] Varredura
  • 13.
  • 14. Implementação #define n ‘k’-’a’ +1; Void binsort(apitem *lista , int size){ apitem v[n]; for(i = 0; i < n; i ++) v[i] = NULL; for(i = size - 1; i > = 0; i --){ while((p = removefirst(lista))!= NULL) insert (p ,&v[p -> info[i] – ‘a’); for(j = 0;j > n; j ++) concat(lista,&v[j]); } }
  • 15. . (próximo slide). FIM DO THE END