数据结构-树

114 阅读1分钟

树的遍历

前序遍历

中序遍历

private List<Integer> ans;

    public List<Integer> inorderTraversal(TreeNode root) {
       ans = new ArrayList<>();
       inorders(root);
       return ans;
    }

    private void inorders(TreeNode root) {
        if (root == null) {
            return;
        }
        inorders(root.left);
        ans.add(root.val);
        inorders(root.right);
    }

    public static void main(String[] args) {
        TreeNode node1 = new TreeNode(1);
        TreeNode node2 = new TreeNode(2);
        TreeNode node3 = new TreeNode(3);
        node1.right = node2;
        node2.left = node3;
        InorderTraversal94 inorderTraversal94 = new InorderTraversal94();
        List<Integer> result = inorderTraversal94.inorderTraversal(node1);
        System.out.println("中序遍历, result:{}" + result.toString());
    }
    

后序遍历

层序遍历