O exercício é o seguinte:
Usando pilhas, crie uma classe Parenteses que receba um texto e avalie se os parênteses estão balanceados. Por exemplo, sua classe deve retornar true para “ [ ( ) ] { } { [ ( ) ( ) ] ( ) } ” e false para “ [ ( ] ) ”.
Eu pensei em criar variáveis boolean para cada ato de abrir e fechar chaves, colchetes ou parenteses e ir desempilhando e vendo quais são os trues e falses para afirmar se tinha erro. O problema é que esse lógica não é boa, pois não consigo pensar numa forma de ver se tem um chave depois de um parentes por exemplo, o que seria um erro.
Alguém tem alguma ideia?