Created
October 10, 2017 23:47
-
-
Save rhynl/47cd9d0f47938638b665111c5cb043eb to your computer and use it in GitHub Desktop.
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
| package programa; | |
| import java.util.Stack; | |
| public class Programa { | |
| public static void main(String[] args) { | |
| String cadena_no_valida = "**(Cadena no equilibrada en paréntesis(()()()))))"; | |
| if (verificarBalanceoDeSimbolos(cadena_no_valida, '*', '*')) { | |
| System.out.println("Valido"); | |
| } else { | |
| System.out.println("Invalido"); | |
| } | |
| } | |
| /** | |
| * | |
| * @param cadena_a_validar | |
| * @param symbol_apertura | |
| * @param symbol_cierre | |
| * @return | |
| */ | |
| public static boolean verificarBalanceoDeSimbolos(String cadena_a_validar, char symbol_apertura, char symbol_cierre) { | |
| boolean valido = false; | |
| Stack<Character> pila = new Stack<Character>(); | |
| int i = 0; | |
| while (i<cadena_a_validar.length()) { | |
| if(cadena_a_validar.charAt(i) == symbol_apertura) { | |
| pila.push(symbol_cierre); | |
| } else if(cadena_a_validar.charAt(i) == symbol_cierre) { | |
| if (!pila.empty()) { | |
| pila.pop(); | |
| } else { | |
| pila.push(symbol_cierre); | |
| break; | |
| } | |
| } | |
| i++; | |
| } | |
| if (pila.empty()) { valido = true;} | |
| return valido; | |
| } | |
| public static boolean verificarBalanceoDeSimbolos(String cadena, char symbol) { | |
| boolean valido = false; | |
| int i = 0; | |
| Stack<Character> caracteres = new Stack<>(); | |
| while(i<cadena.length()) { | |
| if (cadena.charAt(i) == symbol) | |
| caracteres.push(symbol); | |
| i++; | |
| } | |
| if (caracteres.size() % 2 == 0) { valido = true; } | |
| return valido; | |
| } | |
| } |
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment