Answer:
Employing Java language,
Explanation:
//for using stack data structure
import java.util.Stack;
//class definition
public class BracketMatch {
    //function to find the string is well formed or not
    public static boolean isWellFormed(String str) {
        //variable to store the character value
        char ch;
        //check if the first character itself is the end of the brackets
        if (str.charAt(0) == ')'||str.charAt(0) =='}'||str.charAt(0) ==']')
            return false;
        //creating a stack of character type
        Stack<Character> stack = new Stack<Character>();
        //iterating through the characters in string
        for(int i=0; i < str.length(); i++) {
            //storing the current character from the string in the variable
            ch = str.charAt(i);
            if(ch == '('||ch=='{'||ch=='[')
                //if the character is starting of the brackets push it into stack
                stack.push(ch);
            else if(ch == ')')
                //if it is closing bracket and the stack is empty then the string is not well formatted
                if(stack.empty())
                    return false;
                else if(stack.peek() == '(')
                    stack.pop();
                else
                    return false;
            else if(ch == '}')
                if(stack.empty())
                    return false;
                else if(stack.peek() == '{')
                    stack.pop();
                else
                    return false;
        }
        //returning the stack content, if the string will be well formed the stack would be empty
        //after all the operations
        return stack.empty();
    }
    //main method
    public static void main(String[] args) {
        //calling function to find if the string is welll formatted or not
        System.out.println(isWellFormed("{}"));
        //calling function to find if the string is welll formatted or not
        System.out.println(isWellFormed("([)]"));
    }
}