利用java如何实现遍历二叉树-创新互联

这篇文章给大家介绍利用java如何实现遍历二叉树,内容非常详细,感兴趣的小伙伴们可以参考借鉴,希望对大家能有所帮助。

目前创新互联已为千余家的企业提供了网站建设、域名、虚拟主机成都网站托管、企业网站设计、市中网站维护等服务,公司将坚持客户导向、应用为本的策略,正道将秉承"和谐、参与、激情"的文化,与客户和合作伙伴齐心协力一起成长,共同发展。

遍历二叉树,从上往下遍历。但是同层节点可以从左向右遍历,也可以从右向左遍历(也就是之字型遍历),其中,都需要队列进行实现。只是按照之字型稍微麻烦一些。

(1)从上往下打印出二叉树的每个节点,同层节点从左至右打印。

需要一个队列,队列里面放节点(从根节点开始),然后依次进行打印。

import java.util.ArrayList;
import java.util.Queue;
import java.util.LinkedList;
class TreeNode{
 int val = 0;
 TreeNode left = null;
 TreeNode right = null;

 public TreeNode(int val){
  this.val = val;
 }
}

public class Solution {
  public ArrayList PrintFromTopToBottom(TreeNode root) {
   ArrayList list = new ArrayList();
   if(root == null) 
    return list;
   Queue queue = new LinkedList();

   queue.add(root);
   while(!queue.isEmpty()){
    TreeNode t = queue.poll();
    list.add(t.val);
    if(t.left != null) queue.add(t.left);
    if(t.right != null) queue.add(t.right);
   }
   return list;
  }
}

网页标题:利用java如何实现遍历二叉树-创新互联
网页网址:http://hbruida.cn/article/dddcoh.html