Create successful ePaper yourself
Turn your PDF publications into a flip-book with our unique Google optimized e-Paper software.
11. Uma palavra construída sob o alfabeto Σ = a, b é dita bacana se ela contém o mesmo número de<<strong>br</strong> />
a ′ s e b ′ s. A palavra abab, por exemplo, é bacana, enquanto que a palavra abb não é. Escreva um<<strong>br</strong> />
algoritmo que leia uma palavra e determine se ela é bacana ou não (Utilize pilha).<<strong>br</strong> />
12. Na notação usual de expressões aritméticas, os operadores são escritos entre os operandos; por isso,<<strong>br</strong> />
a notação é chamada infixa. Na notação polonesa, ou posfixa, os operadores são escritos depois<<strong>br</strong> />
dos operandos. Exemplo:<<strong>br</strong> />
A + B * C → ABC * +<<strong>br</strong> />
(A * (B + C) / D - E) → ABC + * D / E -<<strong>br</strong> />
Escreva um programa que leia uma expressão em notação infixa e a traduza para a expressão posfixa.<<strong>br</strong> />
Para simplificar, suponha que a expressão infixa está correta e consiste apenas de letras, a<strong>br</strong>eparêntese,<<strong>br</strong> />
fecha-parêntese e símbolos para as quatro operações aritméticas. Além disso, suponha<<strong>br</strong> />
que a expressão toda está “em<strong>br</strong>ulhada” em um par de parênteses.<<strong>br</strong> />
13. Utilizando listas, escreva um programa eficiente para reconhecer se uma palavra é um palíndromo.<<strong>br</strong> />
Uma palavra é palíndromo se a seqüência de letras que a forma é a mesma, quer seja lida da<<strong>br</strong> />
esquerda para a direita ou da direita para a esquerda. Exemplo: “Socorram-me subi no onibus em<<strong>br</strong> />
Marrocos”.<<strong>br</strong> />
14. Seja o seguinte algoritmo de busca em uma lista ordenada L de tamanho n em alocação seqüencial:<<strong>br</strong> />
funç~ao inteiro buscaOrd1(L[]: vetor de inteiros, x: inteiro)<<strong>br</strong> />
início<<strong>br</strong> />
se x