#include "Stack.h"
bracketMatching(s):
| Input stream s of characters
| Output TRUE if parentheses in s balanced, FALSE otherwise
|
| for each ch in s do
| | if ch = open bracket then
| | push ch onto stack
| | else if ch = closing bracket then
| | | if stack is empty then
| | | return FALSE // opening bracket missing (case 1)
| | | else
| | | pop top of stack
| | | if brackets do not match then
| | | return FALSE // wrong closing bracket (case 2)
| | | end if
| | | end if
| | end if
| end for
| if stack is not empty then return FALSE // some brackets unmatched (case 3)
| else return TRUE
|