Respostas
Ed
Vamos analisar cada afirmativa: I - A complexidade computacional de ambas as funções push e pop é O(1). Isso está correto para pilhas implementadas com arrays, onde a operação push e pop têm complexidade O(1). II - O valor exibido pelo programa seria o mesmo caso a instrução a += pop(p); fosse trocada por a += a; Essa afirmação está incorreta. Se trocarmos a instrução por a += a;, o valor exibido pelo programa será diferente, pois a operação pop(p) remove um elemento da pilha, enquanto a operação a += a; apenas duplica o valor de a. III - Em relação ao vazamento de memória (memory leak), é opcional chamar a função free(p), pois o vetor usado pela pilha é alocado estaticamente. Essa afirmação está incorreta. Mesmo que o vetor usado pela pilha seja alocado estaticamente, é importante chamar a função free(p) para liberar a memória alocada dinamicamente para evitar vazamento de memória. Portanto, a única afirmativa correta é a primeira (I).
Responda
Para escrever sua resposta aqui, entre ou crie uma conta