Análise de complexidade de algoritmos de ordenação de dados
Por: Aline Abreu • 26/4/2018 • Trabalho acadêmico • 4.363 Palavras (18 Páginas) • 180 Visualizações
UNIVERSIDADE PAULISTA
------------
Analise de complexidade de algoritmos de ordenação de dados
SÃO PAULO
2017
Aline Maria Barbosa de Abreu
Bianca Souza de Lima
Gustavo Alves de Lima
Matheus Henrique de Almeida Severo
Analise de complexidade de algoritmos de ordenação de dados
Trabalho para a obtenção de nota na disciplina atividades práticas supervisionadas apresentado a Universidade Paulista – UNIP.
Orientador: Prof. César Augusto Cardoso Caetano
SÃO PAULO
2017
Aline Maria Barbosa de Abreu
Bianca Souza de Lima
Gustavo Alves de Lima
Matheus Henrique de Almeida Severo
Analise de complexidade de algoritmos de ordenação de dados
Trabalho para a obtenção de nota na disciplina atividades práticas supervisionadas apresentado a Universidade Paulista – UNIP.
Aprovado em:
Banca Examinadora:
___________________________________/__/_____
Prof.
Universidade Paulista - UNIP
__________________________________/__/______
Prof.
Universidade Paulista – UNIP
RESUMO
Com a grande quantidade de informações que os computadores tem que lidar, é normal que leve tempo até que ele consiga chegar a informação que deseja. Para isso existem métodos de ordenação que visam agilizar o retorno de informações atrás de métodos de busca ordenados. Aqui veremos sete formas de ordenação de dados, assim como suas vantagens e desvantagens
Palavras-chave: estrutura de dados, ordenação, metodos de ordenação, c.
ABSTRACT
With a lot of information that is a computer, it is normal that it takes time until you get information that is a problem. For this, methods of ordering, vislargilizar the return of information behind ordered search methods. Here we will look at seven forms of data ordering, as well as their advantages and disadvantages
Keywords: data structure, ordering, ordering methods, c.
SUMÁRIO
OBJETIVO.................................................................................................................07
1 INTRODUÇÃO........................................................................................................08
2 ALGORITMOS DE ORDENAÇÃO..........................................................................09
2.1 INSERCTION SORT.............................................................................................09
2.2 BUBBLESORT 11
2.3 SELECTION SORT 13
2.4 SHAKESORT 14
2.5 QUICKSORT 15
2.6 MERGESORT 16
2.7 HEAPSORT 17
3 CONCLUSÃO 19
4 CÓDIGO 22
REFERÊNCIAS 31
ANEXO....................................................................................................................33 OBJETIVO
Objetivo geral: Mostrar através de métodos de analise de complexidade o desempenho de algoritmos de ordenação de dados.
Objetivos específicos: Para o êxito de nossa proposta alguns tópicos foram elaborados para serem seguidos:
- Criação de algoritmo com 7 formas de ordenação de dados.
- Através de contadores imbutidos no código, analisar quantos ciclos precisam ser feitos para a ordenação de um vetor.
- Realizar a analíse de complexidade do algoritmo em questão.
- Mostrar as vantagens e desvantagens de cada método.
1 INTRODUÇÃO
Estrutura de Dados é uma parte da computação onde são estudados os diversos métodos para organização de dados, métodos esses que atendem cada um uma necessidade e estão destinados a certos tipos de problemas. Estes métodos na programação são chamados de algoritmos, com eles temos variados jeitos de organizar dados e cada um é implementado conforme a necessidade. Como exemplo de algoritmos usados para tais organizações/buscas temos o BubbleSort e o HeapSort que ordenam de formas distintas.
Existem estruturas clássicas abordadas para a organização/busca de dados com determinados algoritmos, são essas estruturas: arrays/vetores, listas, pilhas, filas, árvore, grafo, deque e tabela hashing.
É essencial para todo programador saber como aproveitar e como administrar algoritmos destinados a busca ou organização de dados pois usando-os de maneira erronia o computador utilizado pode perder performance ou gera saídas erradas.
2 ALGORITMOS DE ORDENAÇÃO DE DADOS
2.1 Inserction Sort
É um algoritmo de ordenação que funciona com o segundo elemento a ser selecionado, se caso este elemento for menor, será trocado com o antecessor e irá se repetir, sempre "empurrando" o menor elemento até chegar em sua posição correta.
...