Given a string s containing just the characters (, ), {, }, [ and ], determine if the input string is valid.
A string is valid if: open brackets are closed by the same type of brackets, and open brackets are closed in the correct order.
Input: s = "()" Output: true
Input: s = "()[]{}"
Output: true
Input: s = "(]" Output: false
Input: s = "([)]" Output: false