/*
 * function TreeNode(x) {
 *   this.val = x;
 *   this.left = null;
 *   this.right = null;
 * }
 */

/**
 * 中序遍历:左子树 根 右子树
 */
function traversal(root, list) {
    if (!root) {
        return list;
    }

    root.left && traversal(root.left, list);
    list.push(root.val);
    root.right && traversal(root.right, list);
}

/**
 * 代码中的类名、方法名、参数名已经指定,请勿修改,直接返回方法规定的值即可
 *
 *
 * @param root TreeNode类
 * @return int整型一维数组
 */
function inorderTraversal(root) {
    const list = [];
    traversal(root, list);
    return list;
}

module.exports = {
    inorderTraversal: inorderTraversal,
};