Menu
Coddy logo textTech

Introdução à Recursividade

Parte da seção Lógica & Fluxo do Journey de Dart da Coddy — lição 47 de 65.

Recursão é uma técnica de programação onde uma função chama a si mesma para resolver um problema. Pense nisso como olhar para dois espelhos um de frente para o outro - cada reflexo contém uma versão menor da mesma imagem, criando um loop infinito até que os reflexos se tornem pequenos demais para serem vistos.

Toda função recursiva precisa de dois componentes essenciais para funcionar corretamente. O caso base é a condição que interrompe a recursão - é como o ponto onde os reflexos no espelho se tornam pequenos demais para importar. Sem um caso base, sua função se chamaria para sempre, eventualmente travando seu programa.

O passo recursivo é onde a função chama a si mesma com uma versão modificada do problema original. Cada vez que a função chama a si mesma, ela deve estar trabalhando em uma versão menor ou mais simples do problema, movendo-se gradualmente em direção ao caso base.

Imagine que você está procurando suas chaves em uma pilha de papéis. Você poderia verificar o papel do topo e, se suas chaves não estiverem lá, faria a mesma coisa com a pilha restante (que agora é um papel menor). Você continuaria repetindo esse processo até encontrar suas chaves ou não restarem mais papéis para verificar.

Esta abordagem de decompor um problema grande em problemas menores e idênticos é o que torna a recursão tão poderosa para certos tipos de desafios de programação.

Folha de consulta

Recursão é uma técnica de programação onde uma função chama a si mesma para resolver um problema, dividindo-o em problemas menores e idênticos.

Toda função recursiva precisa de dois componentes essenciais:

Caso base: A condição que interrompe a recursão para evitar loops infinitos.

Passo recursivo: Onde a função chama a si mesma com uma versão modificada do problema original, movendo-se gradualmente em direção ao caso base.

Experimente você mesmo

Esta lição não inclui um desafio de código.

quiz iconTeste seus conhecimentos

Esta lição inclui um quiz rápido. Comece a lição para respondê-lo e acompanhar seu progresso.

Todas as lições de Lógica & Fluxo