TrabalhosGratuitos.com - Trabalhos, Monografias, Artigos, Exames, Resumos de livros, Dissertações
Pesquisar

A Complexidade de Algoritmos

Por:   •  5/5/2015  •  Projeto de pesquisa  •  1.528 Palavras (7 Páginas)  •  358 Visualizações

Página 1 de 7

[pic 1]

FACULDADE ANHANGUERA DE JUNDIAÍ

CURSO DE CIÊNCIA DA COMPUTAÇÃO

KETTULHY MENDES, RA: 4200053633

CHRISTIAN SANTOS GROSSI, RA: 4200053640.

HENRIQUE TORRES, RA: 4252066478.

ANÁLISE E COMPLEXIDADE DE ALGORITIMOS

JUNDIAÍ

2015

KETTULHY MENDES

CHRISTIAN SANTOS GROSSI

HENRIQUE TORRES

                                ANÁLISE E COMPLEXIDADE DE ALGORITIMOS

Atividade Supervisionada com o objetivo de aprovação na disciplina de Complexidade de Algoritmos do curso de Ciência da computação na Faculdade Anhanguera de Jundiaí, sob a orientação do Professor Rodrigo Rocha.

JUNDIAÍ

2015

KETTULHY MENDES

CHRISTIAN SANTOS GROSSI

HENRIQUE TORRES

ANÁLISE E COMPLEXIDADE DE ALGORITIMOS

Atividade Supervisionada com o objetivo de aprovação na disciplina de Complexidade de Algoritmos do curso de Ciência da computação na Faculdade Anhanguera de Jundiaí, sob a orientação do Professor Rodrigo Rocha.

Aprovado em 09 de Abril de 2015

BANCA EXAMINADORA

____________________________________

Professor Rodrigo Rocha.

Anhanguera Educacional Ltda.

RESUMO

O objetivo deste trabalho é elaborar estudo sobre análise de classes distintas de algoritmos: algoritmos de ordenação, algoritmos em grafos, algoritmos interativos e recursivos e algoritmos gulosos através de medidas de complexidade.

Foi elaborado as medidas assintóticas de complexidade, considerando que os algoritmos são representados, muitas vezes, por funções matemáticas, assim, fez-se um estudo sobre o comportamento assintótico dessas funções.

Palavras-Chave: Algoritmos, funções, ordenação.

ABSTRACT

The objective of this work is to elaborate study on analysis of different classes of algorithms: sorting algorithms, algorithms on graphs, interactive and recursive algorithms and greedy algorithms through complexity measures.

Was prepared the asymptotic measures of complexity, whereas the algorithms are represented often by mathematical functions, as well, there was a study of the asymptotic behavior of these functions.

Keywords: Algorithms, functions, sorting.

SUMÁRIO

1. INTRODUÇÃO.........................................................................................................7

2. RELATÓRIO 1………………..................................................................................8

3. RELATÓRIO 2………………................................................................................11

4. CONCLUSÃO..........................................................................................................13

1. INTRODUÇÃO

O desafio proposto foi um estudo sobre análise de classes distintas de algoritmos, sendo elas: algoritmos de ordenação, algoritmos em grafos, algoritmos iterativos e recursivos e algoritmos gulosos, fazendo uso dos conceitos de medidas de complexidade vistos na disciplina de Análise e Complexidade de Algoritmos. Essas análises são importantes para serem aplicadas em situações de decisão entre dois ou mais algoritmos que resolvem certos tipos de problemas.

Fez-se um estudo sobre o comportamento assintótico de funções. Foi-se analisado algoritmos de ordenação por seleção e por inserção.

Foi realizada a análise de desempenho de alguns algoritmos clássicos de busca, ordenação e sobre grafos. Como também as Medidas de Complexidade, análise assintótica de limites de complexidade.

2. RELATÓRIO 1

Passo 2: Definir, as medidas de complexidade Ômicron (Ο), Ômega (Ω) e Theta (Θ).


1) Melhor Caso
Definido pela letra grega Ω (Ômega).

Exprime o menor tempo de execução de um algoritmo para uma entrada de tamanho n.
Ex: f(n)=Ω(1)


2) Pior Caso
 Representado pela letra grega 0 (Ômicron).

 Baseia-se no maior tempo de execução sobre todas as entradas de tamanho n.
 É o método mais fácil de se obter.
 Ex: f(n)=0(1)


3) Médio Caso
 Definida pela letra grega Ɵ(Theta).


 Deve- se obter a média dos tempos de execução de todas as entradas de tamanho n, ou baseado em probabilidade de determinada condição ocorrer.
 Ex: f(n)=Ɵ(n/2)


Passo 3: Usar as medidas de complexidade descritas acima e fazer as seguintes atividades:

1) Comparar uma função Linear f(n) com uma função Quadrática g(n).
Função Linear f(n) = 5n +2
 Função Quadrática g(n) = 2n²

f(n)= 5n+2
g(n)=2n²
f(n) é o(g(n))?
Para n ≥ 3 é o(g(n)).

2) Comparar uma função exponencial f(n) com uma função cúbica g(n).
Função exponencial f(n) = 2n n
Função cúbica g(n) = n³+2n

f(n)=2n n
g(n)= n³+2n
f(n)Ω(g(n))?
Para n ≥ 5 é Ω(g(n).

...

Baixar como (para membros premium)  txt (10.1 Kb)   pdf (217.4 Kb)   docx (55.2 Kb)  
Continuar por mais 6 páginas »
Disponível apenas no TrabalhosGratuitos.com