Introdução a Complexidade de Algoritmos

Documentos relacionados
Análise de Algoritmos. Análise de Algoritmos. Análise de Algoritmos. Análise de Algoritmos. Análise de Algoritmos. Análise de Algoritmos

SUCESSÕES DE NÚMEROS REAIS. Sucessões

Análise e Síntese de Algoritmos. Revisão CLRS, Cap. 1-3

ANÁLISE DE COMPLEXIDADE DE ALGORITMOS

Jorge Figueiredo, DSC/UFCG. Análise e Técnicas de Algoritmos Jorge Figueiredo, DSC/UFCG. Análise e Técnicas de Algoritmos 2007.

Estudando complexidade de algoritmos

( 1,2,4,8,16,32,... ) PG de razão 2 ( 5,5,5,5,5,5,5,... ) PG de razão 1 ( 100,50,25,... ) PG de razão ½ ( 2, 6,18, 54,162,...

Fundamentos de Análise Matemática Profª Ana Paula. Números reais

Capítulo 5. CASO 5: EQUAÇÃO DE POISSON 5.1 MODELO MATEMÁTICO E SOLUÇÃO ANALÍTICA

Alguns autores também denotam uma sequência usando parêntesis:

Capítulo 5- Introdução à Inferência estatística.

Capítulo 5- Introdução à Inferência estatística. (Versão: para o manual a partir de 2016/17)

binomial seria quase simétrica. Nestas condições será também melhor a aproximação pela distribuição normal.

Métodos de Classificação dos Objetos Segmentados(IAR) Vizinho Próximo Lógica Fuzzy

Sucessão ou Sequência. Sucessão ou seqüência é todo conjunto que consideramos os elementos dispostos em certa ordem. janeiro,fevereiro,...

Sumário. 2 Índice Remissivo 17

1 Amintas engenharia

Introdução à Computação

Capítulo 3. Sucessões e Séries Geométricas

Ordenação e Busca em Arquivos

Stela Adami Vayego DEST/UFPR

10 - Medidas de Variabilidade ou de Dispersão

Complexidade de Algoritmos

Stela Adami Vayego DEST/UFPR

Sequências, PA e PG material teórico

Capítulo I Séries Numéricas

Sumário. 2 Índice Remissivo 19

Obtemos, então, uma amostra aleatória de tamanho n de X, que representamos por X 1, X 2,..., X n.

Proposta de teste de avaliação

PROGRAMAÇÃO E ALGORITMOS (LEII) Universidade da Beira Interior, Departamento de Informática Hugo Pedro Proença, 2016/2017

Universidade do Estado do Amazonas

Apresentação do Cálculo. Apresentação do Cálculo

Representação de Números em Ponto Flutuante

Fundamentos de Análise Matemática Profª Ana Paula. Sequência Infinitas

Teoria Elementar da Probabilidade

Alguns autores também denotam uma sequência usando parêntesis:

Lista de Exercícios #6 Assunto: Propriedade dos Estimadores e Métodos de Estimação

Stela Adami Vayego DEST/UFPR

Universidade Federal de Lavras Departamento de Estatística Prof. Daniel Furtado Ferreira 1 a Aula Prática Técnicas de somatório

ARRANJO SIMPLES PROFº: VALDÉCIO FÉLIX. Choquitomóvel

CINÉTICA QUÍMICA FATORES DE INFLUÊNCIA - TEORIA

AULA Subespaço, Base e Dimensão Subespaço.

Taxas e Índices. Ana Maria Lima de Farias Dirce Uesu Pesco

Aula 5 de Bases Matemáticas

DESIGUALDADES, LEIS LIMITE E TEOREMA DO LIMITE CENTRAL. todas as repetições). Então, para todo o número positivo ξ, teremos:

Distribuições Amostrais

Formas Normais. Dalton E. dos Santos, Kelvin E. Nogueira da Silva, Jorge L. dos Santos Ramos Jr.

CE-003: Estatística II - Turma K/O Avaliações Periódicas (1 o semestre 2018)

5. ANÁLISE DE SISTEMAS DA CONFIABILIADE DE SISTEMAS SÉRIE-PARALELO

Chama-se sequência ou sucessão numérica, a qualquer conjunto ordenado de números reais.

Quicksort. Algoritmos e Estruturas de Dados II

CARTA DE CONTROLE PARA MONITORAMENTO DE FRAÇÃO DE CONFORMES UTILIZANDO UM NOVO ESTIMADOR

SEEC UNIVERSIDADE DO ESTADO DO RIO GRANDE DO NORTE UERN FACULDADE DE CIÊNCIAS EXATAS E NATURAIS FANAT DEPARTAMENTO DE CIÊNCIAS BIOLÓGICAS DECB

Prova Escrita de MATEMÁTICA A - 12o Ano a Fase

Avaliação de Desempenho

Séries e Equações Diferenciais Lista 02 Séries Numéricas

PROF. DR. JACQUES FACON

UNIVERSIDADE TECNOLÓGICA FEDERAL DO PARANÁ Campus Pato Branco ENGENHARIA DE COMPUTAÇÃO. Prova Parcial 1 Matemática Discreta para Computação 2011

CAPÍTULO 8 - Noções de técnicas de amostragem

4.2 Numeração de funções computáveis

DERIVADAS DE FUNÇÕES11

Aula 3 : Somatórios & PIF

21037 : e-fólio A- proposta de resolução

Material Teórico - Módulo Binômio de Newton e Triangulo de Pascal. Soma de Elementos em Linhas, Colunas e Diagonais. Segundo Ano do Ensino Médio

Material Teórico - Módulo Binômio de Newton e Triangulo de Pascal. Soma de Elementos em Linhas, Colunas e Diagonais. Segundo Ano do Ensino Médio

ESCOLA SECUNDÁRIA COM 3º CICLO D. DINIS 11º ANO DE ESCOLARIDADE DE MATEMÁTICA A Tema III Sucessões Reais

CT-234. Estruturas de Dados, Análise de Algoritmos e Complexidade Estrutural. Carlos Alberto Alonso Sanches

MEDIDAS DE TENDÊNCIA CENTRAL E MEDIDAS DE DISPERSÃO Í N D I C E

n ) uma amostra aleatória da variável aleatória X.

CONHECIMENTOS ESPECÍFICOS

Métodos Quantitativos para Ciência da Computação Experimental Aula #4

AMOSTRAGEM ALEATÓRIA DISTRIBUIÇÕES POR AMOSTRAGEM

S E Q U Ê N C I A S E L I M I T E S. Prof. Benito Frazão Pires. Uma sequência é uma lista ordenada de números

1. ORDENAÇÃO POR TROCA ORDENAÇÃO. 1.1 Ordenação por Bolha. Exemplo, 25, 57, 48, 37, 12, 92, 86, 33. Algoritmo. Complexidade de Tempo

Otimização e complexidade de algoritmos: problematizando o cálculo do mínimo múltiplo comum

MATEMÁTICA A - 12o Ano Funções - Limite segundo Heine Propostas de resolução

Seqüências e Séries. Notas de Aula 4º Bimestre/2010 1º ano - Matemática Cálculo Diferencial e Integral I Profª Drª Gilcilene Sanchez de Paulo

FICHA de AVALIAÇÃO de MATEMÁTICA A 11.º Ano Versão 2

Arquivo de Índice (Revisão) Indexação de Arquivos II: Arquivos de Índice Grandes. Arquivos de Índice Grandes

3.4.2 Cálculo da moda para dados tabulados. 3.4 Moda Cálculo da moda para uma lista Cálculo da moda para distribuição de freqüências

BÁRBARA DENICOL DO AMARAL RODRIGUEZ CINTHYA MARIA SCHNEIDER MENEGHETTI CRISTIANA ANDRADE POFFAL SEQUÊNCIAS NUMÉRICAS. 1 a Edição

Numeração de funções computáveis. Nota

MAE Introdução à Probabilidade e Estatística II Resolução Lista 2

Séquências e Séries Infinitas de Termos Constantes

Em linguagem algébrica, podemos escrever que, se a sequência (a 1, a 2, a 3,..., a n,...) é uma Progres-

Dessa forma, concluímos que n deve ser ímpar e, como 120 é par, então essa sequência não possui termo central.

CONCEITOS BÁSICOS E PRINCÍPIOS DE ESTATÍSTICA

O PROBLEMA DE TRANSPORTES SOB A ÓTICA DOS MODELOS DE EQUILÍBRIO ESPACIAL DE MERCADO

Exercício: Mediu-se os ângulos internos de um quadrilátero e obteve-se 361,4. Qual é o erro de que está afetada esta medida?

ESCOLA SECUNDÁRIA COM 3º CICLO D. DINIS 11º ANO DE ESCOLARIDADE DE MATEMÁTICA A Tema III Sucessões Reais

RADIOATIVIDADE- TEORIA PARTE I

Ordenação (Parte 1) Prof. Túlio Toffolo BCC202 Aula 13 Algoritmos e Estruturas de Dados I

Provas de Matemática Elementar - EAD. Período

Transformação de similaridade

CONHECIMENTOS ESPECÍFICOS

Avaliação de Desempenho de Sistemas Discretos

Cap. 4 - Estimação por Intervalo

Matemática E Extensivo V. 1

Preliminares 1. 1 lim sup, lim inf. Medida e Integração. Departamento de Física e Matemática. USP-RP. Prof. Rafael A. Rosales. 8 de março de 2009.

x 1 + x x x = lim x x x 2 = lim x x = lim lim x x 2 limx x Exercício 3

Transcrição:

Itrodução a Complexidade de Algoritmos Estruturas de Dados Prof. Vilso Heck Juior

Apresetação Revisão - O Algoritmo; A Complexidade; Exercício.

Complexidade de Algoritmos REVISÃO - O ALGORITMO

O Algoritmo Os algoritmos são o cere da computação; Programas de computador são criados a partir de algoritmos; Mas o que são algoritmos? São sequêcias de passos bem defiidos, detalhados e fiitos, que quado executados realizam uma tarefa específica.

O Algoritmo Por ser fiito, um algoritmo deve: Iiciar, Processar por um determiado tempo e Termiar; Em geral, tedemos a comparar dois algoritmos distitos, que realizam uma mesma tarefa, pelo tempo ecessário à sua execução.

Complexidade de Algoritmos A COMPLEXIDADE

Diferetes computadores, muitas vezes com hardwares idêticos, podem levar tempos diferetes para processar um mesmo algoritmo; Quado trocamos algum, ou mais, ites de hardware, esta difereça tede a aumetar aida mais; Por tato, avaliar o desempeho de um algoritmo com base apeas o tempo de execução deste, é ieficiete.

Surge o coceito de Complexidade de Algoritmos; Que é uma fração da Complexidade Computacioal; A Complexidade de Algoritmos estuda e defie quato eficiete é um algoritmo em relação ao úmero de operações (passos do algoritmo) ecessárias para fializar a tarefa.

Apesar do hardware iflueciar o tempo de execução de um algoritmo, existe aida um segudo parâmetro que pode também iflueciar este tempo: O Cojuto de Dados!

Em geral, algoritmos servem para processar cojutos de dados com tamaho idetermiado: Listas; Filas; Pilhas; Tabelas; Images; Etre outros.

Exemplo: Para somar todos os elemetos de uma lista: Quado a lista tiver apeas 1 elemeto: Uma operação de soma! Quato a lista tiver 1.000.000 de elemetos: 1.000.000 de somas!

Por padrão, para deotar o tamaho do cojuto de dados a ser processado, chamamos este úmero de dados de:

Criamos, etão, uma fução de complexidade do algoritmo, que irá relacioar o úmero de istruções utilizadas por um algoritmo T() com o tamaho do cojuto de dados : T() = Neste exemplo, para cada dados, teremos operações.

As Complexidades mais comus são: log 2 log 2 2 2 3 3

Perguta 01: Qual é o T() para a pesquisa de um elemeto em uma lista? Perguta 02: Qual é o T() para iserir um elemeto em uma lista?

Temos respostas diferetes para as pergutas ateriores: Perguta 01 3 ceários existetes: O primeiro elemeto ser o procurado (melhor caso); O elemeto cetral ser o procurado (caso médio); O último elemeto ser o procurado (pior caso); Perguta 02 os 3 ceários são iguais: Uma istrução para criar o próximo elemeto; Ecadear o elemeto!

Ceários possíveis: Melhor Caso: Descreve o meor úmero de istruções possíveis de ocorrer para um determiado algoritmo (coforme os dados utilizados); No exemplo de pesquisa em uma lista, o melhor ceário existe quado o primeiro elemeto é o procurado: Neste caso, T() = 1, utiliza-se a otação: ( ) 1

Ceários possíveis: Caso Médio: Descreve o ceário mais comum, o ceário médio, de úmero de istruções; No exemplo da lista, a média os valores procurados estarão o meio da lista. Algumas vezes estarão o iicio, porém outra vezes estarão o fim, isto tora osso valor médio sedo T() = / 2, utilizado a otação: ( ) 2

Ceários possíveis: Pior Caso: Descreve o maior úmero de istruções possíveis de ocorrer para um determiado algoritmo (coforme os dados utilizados); No exemplo da lista, o valor pesquisado se ecotraria o fim e, por tato, precisaríamos de T() =, com a otação: ( )

log log 2 2 3 2 2 Represetações comus: O ceário utilizado para represetar um algoritmo é o de pior caso; Apesar de podermos quatificar as istruções ecessárias para cada algoritmo, para o pior caso, o mais comum é arredodarmos para uma das complexidade mais comus: 3

Ao medir o úmero de istruções ecessárias para cada algoritmo, devem ser cosideradas estruturas, tais como de decisão ou de repetição; Em geral, a estratégia de um algoritmo é resposável pela sua eficiêcia, mas vale lembrar que estruturas de repetição aihadas são as maiores resposáveis pelo aumeto de istruções;

Complexidade log 2 log 2 2 3 2 3 Tempo para executar N = 100, em um Core i7 980-X Extreme Editio 133 s 2 µs 13 µs 200 µs 20 ms 815.104.552.615.888 aos! 331.389.866.725.830.000 000.000.000.000.000 aos!

Exercício Idetifique quais são as complexidades computacioais do seu algoritmo de ordeação de dados. Lembre, você deverá explicar estas complexidades aplicadas em seu algoritmo: Ceário de pior caso; Ceário de caso médio; Ceário de melhor caso;