Programming Job Interview Challenge #13 Answer
Posted: 7/22/2008 1:00:08 PM
Programming Job Interview Challenge Question Week #13Highlight the text below for the answer.
This is pretty simple, use a stack to track all open brackets and on all closed pop the stack to see if you have the correct matching bracket.
private bool AreBracketsClosedProperly(string input)
{
Stack<char> openBrackets = new Stack<char>();
foreach (char bracket in input)
{
switch (bracket)
{
case '(':
case '[':
case '<':
case '{':
openBrackets.Push(bracket);
break;
case ')':
if (openBrackets.Pop() != ')')
return false;
case ']':
if (openBrackets.Pop() != ']')
return false;
case '>':
if (openBrackets.Pop() != '>')
return false;
case '}':
if (openBrackets.Pop() != '}')
return false;
break;
}
}
if (openBrackets.Count != 0)
return false;
else
return true;
}
Tags: Stuff