只需要改动这里 使用res.size()判断奇偶
if(res.size() % 2 == 1) templ.add(0,tempn.val); // -> 队列头部
else templ.add(tempn.val); // -> 队列尾部
/** * Definition for a binary tree node. * public class TreeNode { * int val; * TreeNode left; * TreeNode right; * TreeNode(int x) { val = x; } * } */ class Solution { public List<List<Integer>> levelOrder(TreeNode root) { List<List<Integer>> res = new ArrayList<>(); if(root == null) return res; List<TreeNode> nodelist = new ArrayList<>(); nodelist.add(root); boolean flag = false; while(!nodelist.isEmpty()){ int listlength = nodelist.size(); List<Integer> templ = new ArrayList<>(); for(int i =0; i<listlength;i++){ TreeNode tempn = nodelist.remove(0); if(res.size() % 2 == 1) templ.add(0,tempn.val); // -> 队列头部 else templ.add(tempn.val); // -> 队列尾部 if(tempn.left != null) nodelist.add(tempn.left); if(tempn.right != null) nodelist.add(tempn.right); } res.add(templ); } return res; } }