树的深度优先遍历和广度优先遍历
Posted 52hadoop
tags:
篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了树的深度优先遍历和广度优先遍历相关的知识,希望对你有一定的参考价值。
//深度遍历 private void depthQuery(Node root){ Stack<Node> stack = new Stack<Node>(); stack.push(root); while (stack.empty() ==false){ Node node = stack.pop(); System.out.println(node.value); if (root.right !=null){ stack.push(root.right); } if (root.left !=null){ stack.push(root.left); } } } //广度遍历 private void wideQuery(Node root){ Queue<Node> queue = new LinkedList<Node>(); queue.offer(root); while (queue.size() !=0){ Node node = queue.poll(); System.out.println(node.value); if (node.left !=null){ queue.offer(node.left); } if (node.right !=null){ queue.offer(node.right); } } }
以上是关于树的深度优先遍历和广度优先遍历的主要内容,如果未能解决你的问题,请参考以下文章