/* function TreeNode(x) {
    this.val = x;
    this.left = null;
    this.right = null;
} */
function isSymmetrical(pRoot) {
    // write code here
    function checkOrder(node1, node2) {
        if (node1 == node2) {
            // 节点1和节点2相同,则返回true
            return true;
        }
        if (node1 == null || node2 == null || node1.val != node2.val) {
            // 节点1,节点2为空或值不同,则返回false
            return false;
        }
        // 分别检查节点1的左节点和节点2的右节点,节点1的左右点和节点2的左节点
        return checkOrder(node1.left, node2.right) && checkOrder(node1.right, node2.left);
    }
    if (pRoot == null) {
        return true;
    }
    let ans = checkOrder(pRoot.left, pRoot.right);
    return ans;
}
module.exports = {
    isSymmetrical: isSymmetrical
};