A apresentação está carregando. Por favor, espere

A apresentação está carregando. Por favor, espere

Ciência da Computação 1 PROGRAMAÇÃO ESTRUTURADA II Profª. Noeli.

Apresentações semelhantes


Apresentação em tema: "Ciência da Computação 1 PROGRAMAÇÃO ESTRUTURADA II Profª. Noeli."— Transcrição da apresentação:

1 Ciência da Computação 1 PROGRAMAÇÃO ESTRUTURADA II Profª. Noeli

2 CIÊNCIA DA COMPUTAÇÃO RECURSIVIDADE

3 CIÊNCIA DA COMPUTAÇÃO FUNÇÕES RECURSIVAS Funções recursivas são caracterizadas por possuírem “auto-chamadas”. Estas “auto-chamadas” geram uma seqüência de execuções da função recursivamente até que a função pare de efetuar a “auto-chamada”.

4 CIÊNCIA DA COMPUTAÇÃO FUNÇÕES RECURSIVAS Em toda a função recursiva, existem os componentes: Um passo básico (ou mais) cujo o resultado é imediatamente conhecido; Um passo recursivo (ou mais) em que se tenta resolver um sub- problema do problema inicial.

5 CIÊNCIA DA COMPUTAÇÃO FUNÇÕES RECURSIVAS Geralmente possui expressão condicional; Sua execução consiste em ir resolvendo sub-problemas mais simples, até se atingir o mais simples de todos (resultado conhecido de imediato)

6 CIÊNCIA DA COMPUTAÇÃO RECURSIVIDADE Estudo de Caso: FATORIAL

7 CIÊNCIA DA COMPUTAÇÃO FATORIAL NÃO RECURSIVO int fat(int n) { int i, f = 1; for(i= n; i >= 1; i--) { f = f * i; } return f; }

8 CIÊNCIA DA COMPUTAÇÃO FATORIAL RECURSIVO int fat(int n) { if (n <= 1) return 1; else return n * fat(n -1); } Condição de Parada Chamada Recursiva

9 CIÊNCIA DA COMPUTAÇÃO VANTAGEM Os algoritmos recursivos normalmente são mais compactos, mais legíveis e mais fáceis de serem compreendidos. Algoritmos para resolver problemas de natureza recursiva são fáceis de serem implementados em linguagens de programação de alto nível.

10 CIÊNCIA DA COMPUTAÇÃO DESVANTAGEM Por usarem intensivamente a pilha de execução, o que requer alocações e desalocações de memória, os algoritmos recursivos tendem a ser mais lentos que os equivalentes iterativos, mas, em muitos casos, pode valer a pena sacrificar a eficiência em benefício da clareza. Algoritmos recursivos são mais difíceis de serem depurados durante a fase de desenvolvimento.

11 Lista de Exercícios na sala Virtual. CIÊNCIA DA COMPUTAÇÃO EXERCÍCIOS


Carregar ppt "Ciência da Computação 1 PROGRAMAÇÃO ESTRUTURADA II Profª. Noeli."

Apresentações semelhantes


Anúncios Google