<新浪微博笔试1>倒置二叉树,输入为数组,层序输出

给定二叉树数组,构建二叉树,进行二叉树倒置 ,层序输出

https://support.leetcode-cn.com/hc/kb/article/1194353/<新浪微博笔试1>倒置二叉树,输入为数组,层序输出_第1张图片

package lzl.bishi;

import java.util.LinkedList;
import java.util.Queue;
import java.util.Scanner;

public class Wb1 {
    private static int[] ans;
    private  static int index=0;
    public static void main(String[] args) {
        Scanner sc=new Scanner(System.in);
        String str=sc.nextLine();
        String[]  strs=str.split(",");
        int len=strs.length;
        int [] arr=new int[len];
        for (int i = 0; i arr.length) return null;
        Integer v=arr[index-1];
        if(v==null) return  null;
        TreeNode node=new TreeNode(v);
        node.left=buildTree2(arr,index*2);
        node.right=buildTree2(arr,index*2+1);
        return node;
    }
 
    public static TreeNode dfs(TreeNode root){
        if(root==null || (root.left==null )) return  root;
        TreeNode t=root.left,r=root.right;
        TreeNode res=dfs(t);
        t.left=root.right;
        t.right=root;
        root.right=null;
        root.left=null;
        return  res;
    }
    private static void print(TreeNode root){
        if(root==null) return ;
        Queue q=new LinkedList<>();
        q.add(root);
        while(!q.isEmpty()){
            int size=q.size();
            for (int i = 0; i 

 

你可能感兴趣的:(面试笔试,新浪微博笔试1,倒置二叉树,输入为数组,层序输出)