2 个回答
const tree = {
    id: 1,
    children: [
        {
            id: 2,
            children: [
                {
                    id: 3,
                    children: [
                        { id: 4, children: [] },
                        { id: 5, children: [] },
                    ],
                },
            ],
        },
        {
            id: 6,
            children: [
                {
                    id: 7,
                    children: [
                        { id: 8, children: [] },
                        { id: 9, children: [] },
                    ],
                },
            ],
        },
    ],
};

const func = (root) => {
    if (root.children.length === 0) {
        return [];
    }

    const res = [];
    const dfs = (node) => {
        if (node.children.length === 0) {
            res.push(node.id);
            return;
        }
        node.children.forEach(dfs);
    };
    dfs(root);
    return res;
};

console.log(func(tree));
撰写回答
你尚未登录,登录后可以
  • 和开发者交流问题的细节
  • 关注并接收问题和回答的更新提醒
  • 参与内容的编辑和改进,让解决方法与时俱进
推荐问题