SlideShare uma empresa Scribd logo
1 de 3
Centro Universitário do Sul de Minas – UNIS-MG
Unidade de Gestão da Educação Superior Presencial – GEP
Ciência da Computação

Complexidade de Algoritmos Insertion, Selection e Bubble Sort
Análise de Algoritmos

Professor Renan Levenhagen Bustamante Neves

Júlio Cezar Ferreira Rocha

Varginha
2013
1 - Complexidade de Algoritmos Bubble Sort
As operações de comparações e de troca de posição de elementos são executadas no Pior
Caso, o algoritmo realizará n-1 troca para o primeiro passo, depois n-2 trocas para o segundo
elemento e assim sucessivamente. Trocas = n-1+n-2+n-3...+2+1 aproximadamente n2 trocas.
No Melhor Caso, nenhuma troca será realizada, pois em ambos os casos o algoritmo faz da
ordem n comparações.
Complexidade no tempo: Comportamento do algoritmo no tempo, em função do tamanho
da entrada.
Complexidade no espaço: Consumo de memória do algoritmo, em função do tamanho da
entrada.
O tempo gasto na execução do algoritmo varia em ordem quadrática em relação ao
número de elementos a serem ordenados.
- T = O (n²) – Notação “Big O”
- Atividades mais custosas:
• Comparações
• Troca de Posição (swap)
Melhor caso: Vetor Ordenado.
Pior caso: Vetor invertido.

2 - Complexidade de Algoritmos Selection Sort
A operação entre as chaves é feita no loop k, para cada valor de i são realizadas (i-1)
comparações no loop, como i varia de 2 até n, o número total de comparações para ordenar a
lista toda é que para qualquer valor de i existe no máximo uma troca, se no caso a lista já
estiver ordenada não ocorre troca. Pior caso existe uma troca para cada loop de k (n-1) para
cada troca exige três movimentos. O algoritmo de seleção é considerado um dos mais simples,
além disso, possui uma característica eficiente quanto à quantidade de movimentações de
registros, com um tempo de execução linear no tamanho de entrada. Geralmente é utilizado
para arquivos de registros maiores com até 1000 registros.
- T = O(n²)
O fato de o conjunto já estar ordenado não ajuda em nada. O algoritmo não é estável, isto
é, os registros com chaves iguais nem sempre irão manter a mesma posição relativa de antes
do início da ordenação.

3 – Complexidade de Algoritmos Insertion Sort
Se o valor a ordenar possui n elementos, então o algoritmo realizará n – 1 etapas.
Quantas comparações e trocas serão realizadas?
• No melhor caso, vetor ordenado, serão realizadas 1 comparação e 1 troca por
etapa, um total de (n-1) comparações e (n-1) trocas.
• No pior caso, vetor em ordem inversa, serão realizadas sucessivamente 1,2,3,... n1 comparações e trocas.
A soma dos termos dessa progressão aritmética será n²/2.
Pode ser demonstrado que para um vetor aleatório, o número aproximado de
comparações e trocas é n²/4.
Portanto, a complexidade deste algoritmo é quadrática.
- T = O(n²).
No anel mais interno, na i-ésima iteração, o valor de Ci é: Melhor caso: Ci(número de
comparações) = 1 Pior caso: Ci(número de comparações) = i Caso médio: Ci(número de
comparações) = 1/i(1 + 2 + ... + i) = (i+1)/2 Se todas as permutações de n são igualmente
prováveis para o caso médio, então, o número de comparações é igual a: Melhor caso: C(n) =
(1 + 1 + ... + 1) = n - 1 Pior caso: C(n) = (2 + 3 + ... + n) = n2/2 + n/2 - 1 Caso médio: C(n) =
1/2(3 + 4 + ... + n+1) = n2/4 + 3n/4 – 1 O número de movimentações na i-ésima iteração é
igual a Mi(n) = Ci(n) – 1 + 3 = Ci(n) + 2 logo, o número de movimentos é igual a: Melhor
caso: M(número de elementos do arquivo) = (3 + 3 + ... + 3) = 3(n – 1) Pior caso: M(número
de elementos do arquivo) = (4 + 5 + ... + n+2) = n2/2 + 5n/2 – 3 Caso médio: M(número de
elementos do arquivo) = 1/2(5 + 6 + ... + n+3) = n2/4 + 11n/4 – 3 Deste modo podemos
concluir que: Melhor caso: O(n) Pior caso: O(n2) Caso médio: O(n2) O menor número de
comparações e trocas ocorre exatamente quando os elementos estão originalmente em ordem,
e o número máximo de comparações e trocas ocorre quando os itens estão originalmente na
ordem oposta. Para arquivos já ordenados o algoritmo descobre a um custo O(n) que cada
item já está em seu lugar. Então, este é o método a ser utilizado quando o arquivo está
ordenado na sua origem. É também um método bom para adicionar um pequeno conjunto de
dados a um arquivo já ordenado, originando um outro arquivo ordenado, pois neste caso o
custo pode ser considerado linear.

4 - Bibliografia
Alves, Ms. Daniel Arndt. Estrutura de Dados II. Insertion Sort. São Paulo. 2009.
Alves, Ms. Daniel Arndt. Estrutura de Dados II. Selection Sort. São Paulo. 2009.
Alves, Ms. Daniel Arndt. Estrutura de Dados II. Bubble Sort. São Paulo. 2009.
Junior, Vilson Heck. Introdução a Complexidade de Algoritmos. São Paulo. 2008.
Prestes, Edson. Complexidade de Algoritmos. Rio de Janeiro. 2007.
Silva, Cândida Nunes. Complexidade de Algoritmos I. Rio de Janeiro. 2011.

Mais conteúdo relacionado

Mais procurados

Presentation on the topic selection sort
Presentation on the topic selection sortPresentation on the topic selection sort
Presentation on the topic selection sortDistrict Administration
 
Metodos de ordenação estrutura de dados
Metodos de ordenação   estrutura de dadosMetodos de ordenação   estrutura de dados
Metodos de ordenação estrutura de dadosThalita Chaves
 
Selection sort
Selection sortSelection sort
Selection sortamna izzat
 
Dsa – data structure and algorithms sorting
Dsa – data structure and algorithms  sortingDsa – data structure and algorithms  sorting
Dsa – data structure and algorithms sortingsajinis3
 
Presentation on binary search, quick sort, merge sort and problems
Presentation on binary search, quick sort, merge sort  and problemsPresentation on binary search, quick sort, merge sort  and problems
Presentation on binary search, quick sort, merge sort and problemsSumita Das
 
Data Structures - Searching & sorting
Data Structures - Searching & sortingData Structures - Searching & sorting
Data Structures - Searching & sortingKaushal Shah
 
ShellSort - Ordenação
ShellSort - OrdenaçãoShellSort - Ordenação
ShellSort - OrdenaçãoAnderson Zardo
 
Shell sort in Data Structure Using C
Shell sort in Data Structure Using CShell sort in Data Structure Using C
Shell sort in Data Structure Using CAshish Gaurkhede
 
Binary search tree in data structures
Binary search tree in  data structuresBinary search tree in  data structures
Binary search tree in data structureschauhankapil
 
Advanced Sorting Algorithms
Advanced Sorting AlgorithmsAdvanced Sorting Algorithms
Advanced Sorting AlgorithmsDamian T. Gordon
 
Algoritmos de ordenamineto y busqueda
Algoritmos de ordenamineto y busquedaAlgoritmos de ordenamineto y busqueda
Algoritmos de ordenamineto y busquedaCesar Gonzalez
 
Introdução à analise e complexidade de algoritmos
Introdução à analise e complexidade de algoritmosIntrodução à analise e complexidade de algoritmos
Introdução à analise e complexidade de algoritmosNécio de Lima Veras
 

Mais procurados (20)

Recurrences
RecurrencesRecurrences
Recurrences
 
Presentation on the topic selection sort
Presentation on the topic selection sortPresentation on the topic selection sort
Presentation on the topic selection sort
 
Metodos de ordenação estrutura de dados
Metodos de ordenação   estrutura de dadosMetodos de ordenação   estrutura de dados
Metodos de ordenação estrutura de dados
 
Selection sort
Selection sortSelection sort
Selection sort
 
Dsa – data structure and algorithms sorting
Dsa – data structure and algorithms  sortingDsa – data structure and algorithms  sorting
Dsa – data structure and algorithms sorting
 
Presentation on binary search, quick sort, merge sort and problems
Presentation on binary search, quick sort, merge sort  and problemsPresentation on binary search, quick sort, merge sort  and problems
Presentation on binary search, quick sort, merge sort and problems
 
Data Structures - Searching & sorting
Data Structures - Searching & sortingData Structures - Searching & sorting
Data Structures - Searching & sorting
 
ShellSort - Ordenação
ShellSort - OrdenaçãoShellSort - Ordenação
ShellSort - Ordenação
 
Sorting
SortingSorting
Sorting
 
Ordenação
OrdenaçãoOrdenação
Ordenação
 
Shell sort in Data Structure Using C
Shell sort in Data Structure Using CShell sort in Data Structure Using C
Shell sort in Data Structure Using C
 
Sorting algorithms
Sorting algorithmsSorting algorithms
Sorting algorithms
 
Merge sort and quick sort
Merge sort and quick sortMerge sort and quick sort
Merge sort and quick sort
 
Binary search tree in data structures
Binary search tree in  data structuresBinary search tree in  data structures
Binary search tree in data structures
 
Quick sort
Quick sortQuick sort
Quick sort
 
Advanced Sorting Algorithms
Advanced Sorting AlgorithmsAdvanced Sorting Algorithms
Advanced Sorting Algorithms
 
Algoritmos de ordenamineto y busqueda
Algoritmos de ordenamineto y busquedaAlgoritmos de ordenamineto y busqueda
Algoritmos de ordenamineto y busqueda
 
Algoritmos de busca
Algoritmos de buscaAlgoritmos de busca
Algoritmos de busca
 
Insertion sort algorithm power point presentation
Insertion  sort algorithm power point presentation Insertion  sort algorithm power point presentation
Insertion sort algorithm power point presentation
 
Introdução à analise e complexidade de algoritmos
Introdução à analise e complexidade de algoritmosIntrodução à analise e complexidade de algoritmos
Introdução à analise e complexidade de algoritmos
 

Destaque

métodos ordenação C, bolha, selection sort e insertion sort
métodos ordenação C, bolha, selection sort e insertion sortmétodos ordenação C, bolha, selection sort e insertion sort
métodos ordenação C, bolha, selection sort e insertion sortAlessandro Trevisan
 
Complexidade de Algoritmos, Notação assintótica, Algoritmos polinomiais e in...
Complexidade de Algoritmos, Notação assintótica, Algoritmos polinomiais e in...Complexidade de Algoritmos, Notação assintótica, Algoritmos polinomiais e in...
Complexidade de Algoritmos, Notação assintótica, Algoritmos polinomiais e in...Universidade de São Paulo
 
Comparativo bubble sort e quick sort
Comparativo bubble sort e quick sortComparativo bubble sort e quick sort
Comparativo bubble sort e quick sortDaiana de Ávila
 
Análise de Algoritmos - Solução de Recorrências
Análise de Algoritmos - Solução de RecorrênciasAnálise de Algoritmos - Solução de Recorrências
Análise de Algoritmos - Solução de RecorrênciasDelacyr Ferreira
 
Análise de Algoritmos de Ordenação Interna
Análise de Algoritmos de Ordenação InternaAnálise de Algoritmos de Ordenação Interna
Análise de Algoritmos de Ordenação InternaJohnnatan Messias
 
Análise de Algoritmos - Análise Assintótica
Análise de Algoritmos - Análise AssintóticaAnálise de Algoritmos - Análise Assintótica
Análise de Algoritmos - Análise AssintóticaDelacyr Ferreira
 
Apostila de Acordes
Apostila de Acordes  Apostila de Acordes
Apostila de Acordes Júlio Rocha
 
01 algorimos e complexidade introduç o
01   algorimos e complexidade introduç o01   algorimos e complexidade introduç o
01 algorimos e complexidade introduç oCravid Ekuikui
 
Metodo de Ordenação Selection sort
Metodo de Ordenação Selection sortMetodo de Ordenação Selection sort
Metodo de Ordenação Selection sortLeno Oliveira
 
Análise de Algoritmos - Método Guloso
Análise de Algoritmos - Método GulosoAnálise de Algoritmos - Método Guloso
Análise de Algoritmos - Método GulosoDelacyr Ferreira
 
Ordenação de Dados por Distribuição de Chaves
Ordenação de Dados por Distribuição de ChavesOrdenação de Dados por Distribuição de Chaves
Ordenação de Dados por Distribuição de ChavesMauricio Volkweis Astiazara
 

Destaque (20)

métodos ordenação C, bolha, selection sort e insertion sort
métodos ordenação C, bolha, selection sort e insertion sortmétodos ordenação C, bolha, selection sort e insertion sort
métodos ordenação C, bolha, selection sort e insertion sort
 
Complexidade de Algoritmos, Notação assintótica, Algoritmos polinomiais e in...
Complexidade de Algoritmos, Notação assintótica, Algoritmos polinomiais e in...Complexidade de Algoritmos, Notação assintótica, Algoritmos polinomiais e in...
Complexidade de Algoritmos, Notação assintótica, Algoritmos polinomiais e in...
 
Insertion Sort
Insertion SortInsertion Sort
Insertion Sort
 
Bubble Sort
Bubble SortBubble Sort
Bubble Sort
 
Selection Sort
Selection SortSelection Sort
Selection Sort
 
Comparativo bubble sort e quick sort
Comparativo bubble sort e quick sortComparativo bubble sort e quick sort
Comparativo bubble sort e quick sort
 
Análise de Algoritmos - Solução de Recorrências
Análise de Algoritmos - Solução de RecorrênciasAnálise de Algoritmos - Solução de Recorrências
Análise de Algoritmos - Solução de Recorrências
 
Selection sort
Selection sortSelection sort
Selection sort
 
Algoritmos de ordenação
Algoritmos de ordenaçãoAlgoritmos de ordenação
Algoritmos de ordenação
 
Análise de Algoritmos de Ordenação Interna
Análise de Algoritmos de Ordenação InternaAnálise de Algoritmos de Ordenação Interna
Análise de Algoritmos de Ordenação Interna
 
Análise de Algoritmos - Análise Assintótica
Análise de Algoritmos - Análise AssintóticaAnálise de Algoritmos - Análise Assintótica
Análise de Algoritmos - Análise Assintótica
 
Análise de Algoritmos
Análise de AlgoritmosAnálise de Algoritmos
Análise de Algoritmos
 
Apostila de Acordes
Apostila de Acordes  Apostila de Acordes
Apostila de Acordes
 
01 algorimos e complexidade introduç o
01   algorimos e complexidade introduç o01   algorimos e complexidade introduç o
01 algorimos e complexidade introduç o
 
2 referencial teorico
2 referencial teorico2 referencial teorico
2 referencial teorico
 
Aula analise algoritmos
Aula analise algoritmosAula analise algoritmos
Aula analise algoritmos
 
Metodo de Ordenação Selection sort
Metodo de Ordenação Selection sortMetodo de Ordenação Selection sort
Metodo de Ordenação Selection sort
 
Análise de Algoritmos - Método Guloso
Análise de Algoritmos - Método GulosoAnálise de Algoritmos - Método Guloso
Análise de Algoritmos - Método Guloso
 
Ordenação de Dados por Distribuição de Chaves
Ordenação de Dados por Distribuição de ChavesOrdenação de Dados por Distribuição de Chaves
Ordenação de Dados por Distribuição de Chaves
 
Algoritmo de Rabin-Karp
Algoritmo de Rabin-KarpAlgoritmo de Rabin-Karp
Algoritmo de Rabin-Karp
 

Semelhante a Complexidade de algoritmos insertion, selection e bubble sort.

Aula_07_Complexidade_de_Algoritmos.ppt
Aula_07_Complexidade_de_Algoritmos.pptAula_07_Complexidade_de_Algoritmos.ppt
Aula_07_Complexidade_de_Algoritmos.pptssuserd654cb1
 
Aula_07_Complexidade_de_Algoritmos (1).ppt
Aula_07_Complexidade_de_Algoritmos (1).pptAula_07_Complexidade_de_Algoritmos (1).ppt
Aula_07_Complexidade_de_Algoritmos (1).pptssuserd654cb1
 
Metódos de Pesquisa em C
Metódos de Pesquisa em CMetódos de Pesquisa em C
Metódos de Pesquisa em Crodolfoeyalana
 
13 introducao a analise de algoritmos
13   introducao a analise de algoritmos13   introducao a analise de algoritmos
13 introducao a analise de algoritmosRicardo Bolanho
 
Análise assintótica
Análise assintóticaAnálise assintótica
Análise assintóticaPablo Silva
 
Análise da complexidade de algoritmos
Análise da complexidade de algoritmosAnálise da complexidade de algoritmos
Análise da complexidade de algoritmosPablo Silva
 
Ordenação de vetores
Ordenação de vetoresOrdenação de vetores
Ordenação de vetoresalfredtaddeus
 
Algoritmo de programação dinâmica-01.pdf
Algoritmo de programação dinâmica-01.pdfAlgoritmo de programação dinâmica-01.pdf
Algoritmo de programação dinâmica-01.pdfCaiqueMiranda7
 
Artigo sobre complexibilidade complexity.pdf
Artigo sobre complexibilidade complexity.pdfArtigo sobre complexibilidade complexity.pdf
Artigo sobre complexibilidade complexity.pdfItaloRainier1
 
Análise Assintótica
Análise AssintóticaAnálise Assintótica
Análise AssintóticaMarcos Castro
 
(ACH2002) Introdução à Análise de Algoritmos - Aula 13
(ACH2002) Introdução à Análise de Algoritmos - Aula 13(ACH2002) Introdução à Análise de Algoritmos - Aula 13
(ACH2002) Introdução à Análise de Algoritmos - Aula 13Norton Trevisan Roman
 
Recursividade em C
Recursividade em CRecursividade em C
Recursividade em CCaique Silva
 

Semelhante a Complexidade de algoritmos insertion, selection e bubble sort. (14)

Aula_07_Complexidade_de_Algoritmos.ppt
Aula_07_Complexidade_de_Algoritmos.pptAula_07_Complexidade_de_Algoritmos.ppt
Aula_07_Complexidade_de_Algoritmos.ppt
 
Aula_07_Complexidade_de_Algoritmos (1).ppt
Aula_07_Complexidade_de_Algoritmos (1).pptAula_07_Complexidade_de_Algoritmos (1).ppt
Aula_07_Complexidade_de_Algoritmos (1).ppt
 
Metódos de Pesquisa em C
Metódos de Pesquisa em CMetódos de Pesquisa em C
Metódos de Pesquisa em C
 
13 introducao a analise de algoritmos
13   introducao a analise de algoritmos13   introducao a analise de algoritmos
13 introducao a analise de algoritmos
 
Análise assintótica
Análise assintóticaAnálise assintótica
Análise assintótica
 
Análise da complexidade de algoritmos
Análise da complexidade de algoritmosAnálise da complexidade de algoritmos
Análise da complexidade de algoritmos
 
Ordenação de vetores
Ordenação de vetoresOrdenação de vetores
Ordenação de vetores
 
Pesquisa sequencial
Pesquisa sequencialPesquisa sequencial
Pesquisa sequencial
 
Algoritmo de programação dinâmica-01.pdf
Algoritmo de programação dinâmica-01.pdfAlgoritmo de programação dinâmica-01.pdf
Algoritmo de programação dinâmica-01.pdf
 
Artigo sobre complexibilidade complexity.pdf
Artigo sobre complexibilidade complexity.pdfArtigo sobre complexibilidade complexity.pdf
Artigo sobre complexibilidade complexity.pdf
 
Análise Assintótica
Análise AssintóticaAnálise Assintótica
Análise Assintótica
 
(ACH2002) Introdução à Análise de Algoritmos - Aula 13
(ACH2002) Introdução à Análise de Algoritmos - Aula 13(ACH2002) Introdução à Análise de Algoritmos - Aula 13
(ACH2002) Introdução à Análise de Algoritmos - Aula 13
 
Recursividade em C
Recursividade em CRecursividade em C
Recursividade em C
 
shellsort.pdf
shellsort.pdfshellsort.pdf
shellsort.pdf
 

Complexidade de algoritmos insertion, selection e bubble sort.

  • 1. Centro Universitário do Sul de Minas – UNIS-MG Unidade de Gestão da Educação Superior Presencial – GEP Ciência da Computação Complexidade de Algoritmos Insertion, Selection e Bubble Sort Análise de Algoritmos Professor Renan Levenhagen Bustamante Neves Júlio Cezar Ferreira Rocha Varginha 2013
  • 2. 1 - Complexidade de Algoritmos Bubble Sort As operações de comparações e de troca de posição de elementos são executadas no Pior Caso, o algoritmo realizará n-1 troca para o primeiro passo, depois n-2 trocas para o segundo elemento e assim sucessivamente. Trocas = n-1+n-2+n-3...+2+1 aproximadamente n2 trocas. No Melhor Caso, nenhuma troca será realizada, pois em ambos os casos o algoritmo faz da ordem n comparações. Complexidade no tempo: Comportamento do algoritmo no tempo, em função do tamanho da entrada. Complexidade no espaço: Consumo de memória do algoritmo, em função do tamanho da entrada. O tempo gasto na execução do algoritmo varia em ordem quadrática em relação ao número de elementos a serem ordenados. - T = O (n²) – Notação “Big O” - Atividades mais custosas: • Comparações • Troca de Posição (swap) Melhor caso: Vetor Ordenado. Pior caso: Vetor invertido. 2 - Complexidade de Algoritmos Selection Sort A operação entre as chaves é feita no loop k, para cada valor de i são realizadas (i-1) comparações no loop, como i varia de 2 até n, o número total de comparações para ordenar a lista toda é que para qualquer valor de i existe no máximo uma troca, se no caso a lista já estiver ordenada não ocorre troca. Pior caso existe uma troca para cada loop de k (n-1) para cada troca exige três movimentos. O algoritmo de seleção é considerado um dos mais simples, além disso, possui uma característica eficiente quanto à quantidade de movimentações de registros, com um tempo de execução linear no tamanho de entrada. Geralmente é utilizado para arquivos de registros maiores com até 1000 registros. - T = O(n²) O fato de o conjunto já estar ordenado não ajuda em nada. O algoritmo não é estável, isto é, os registros com chaves iguais nem sempre irão manter a mesma posição relativa de antes do início da ordenação. 3 – Complexidade de Algoritmos Insertion Sort Se o valor a ordenar possui n elementos, então o algoritmo realizará n – 1 etapas. Quantas comparações e trocas serão realizadas? • No melhor caso, vetor ordenado, serão realizadas 1 comparação e 1 troca por etapa, um total de (n-1) comparações e (n-1) trocas. • No pior caso, vetor em ordem inversa, serão realizadas sucessivamente 1,2,3,... n1 comparações e trocas.
  • 3. A soma dos termos dessa progressão aritmética será n²/2. Pode ser demonstrado que para um vetor aleatório, o número aproximado de comparações e trocas é n²/4. Portanto, a complexidade deste algoritmo é quadrática. - T = O(n²). No anel mais interno, na i-ésima iteração, o valor de Ci é: Melhor caso: Ci(número de comparações) = 1 Pior caso: Ci(número de comparações) = i Caso médio: Ci(número de comparações) = 1/i(1 + 2 + ... + i) = (i+1)/2 Se todas as permutações de n são igualmente prováveis para o caso médio, então, o número de comparações é igual a: Melhor caso: C(n) = (1 + 1 + ... + 1) = n - 1 Pior caso: C(n) = (2 + 3 + ... + n) = n2/2 + n/2 - 1 Caso médio: C(n) = 1/2(3 + 4 + ... + n+1) = n2/4 + 3n/4 – 1 O número de movimentações na i-ésima iteração é igual a Mi(n) = Ci(n) – 1 + 3 = Ci(n) + 2 logo, o número de movimentos é igual a: Melhor caso: M(número de elementos do arquivo) = (3 + 3 + ... + 3) = 3(n – 1) Pior caso: M(número de elementos do arquivo) = (4 + 5 + ... + n+2) = n2/2 + 5n/2 – 3 Caso médio: M(número de elementos do arquivo) = 1/2(5 + 6 + ... + n+3) = n2/4 + 11n/4 – 3 Deste modo podemos concluir que: Melhor caso: O(n) Pior caso: O(n2) Caso médio: O(n2) O menor número de comparações e trocas ocorre exatamente quando os elementos estão originalmente em ordem, e o número máximo de comparações e trocas ocorre quando os itens estão originalmente na ordem oposta. Para arquivos já ordenados o algoritmo descobre a um custo O(n) que cada item já está em seu lugar. Então, este é o método a ser utilizado quando o arquivo está ordenado na sua origem. É também um método bom para adicionar um pequeno conjunto de dados a um arquivo já ordenado, originando um outro arquivo ordenado, pois neste caso o custo pode ser considerado linear. 4 - Bibliografia Alves, Ms. Daniel Arndt. Estrutura de Dados II. Insertion Sort. São Paulo. 2009. Alves, Ms. Daniel Arndt. Estrutura de Dados II. Selection Sort. São Paulo. 2009. Alves, Ms. Daniel Arndt. Estrutura de Dados II. Bubble Sort. São Paulo. 2009. Junior, Vilson Heck. Introdução a Complexidade de Algoritmos. São Paulo. 2008. Prestes, Edson. Complexidade de Algoritmos. Rio de Janeiro. 2007. Silva, Cândida Nunes. Complexidade de Algoritmos I. Rio de Janeiro. 2011.