ITEM 3(a)
Escreva uma função iterativa de nome contaCelulas que recebe uma apontador ini para uma lista encadeada sem cabeça e devolve o número de células da lista.
UMA SOLUÇÃO
int contaCelulas (Celula *ini) { int noCelulas = 0; while (ini != NULL) {
noCelulas++; ini = ini->prox; } return noCelulas; }
ITEM 3(b)
Escreva uma função recursiva de nome contaCelulas que recebe uma apontador ini para uma lista encadeada sem cabeça e devolve o número de células da lista.
UMA SOLUÇÃO
int
contaCelulas (Celula *ini)
{
if (ini == NULL) return 0;
return 1 + contaCelulas(ini->prox);
}
A soluções usam a abreviatura Celula
struct celula {
int conteudo;
struct celula *prox;
}
typedef struct celula Celula;