BFS广度遍历代码模板
Posted gaopengpy
tags:
篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了BFS广度遍历代码模板相关的知识,希望对你有一定的参考价值。
BFS广度遍历代码模板
/** 广度遍历代码模板 */ public class TestBFS { public List<List<Integer>> bsf(TreeNode root) { // 如果节点为空 if (root == null) { return null; } List<List<Integer>> result = new ArrayList<>(); Queue<TreeNode> queue = new LinkedList<>(); queue.add(root); while (!queue.isEmpty()) { int size = queue.size(); List<Integer> level = new ArrayList<>(); for (int i = 0; i < size; i++) { TreeNode curNode = queue.poll(); if (curNode == null) { continue; } level.add(curNode.val); queue.add(curNode.left); queue.add(curNode.right); } if (!level.isEmpty()) { result.add(level); } } return result; } }
以上是关于BFS广度遍历代码模板的主要内容,如果未能解决你的问题,请参考以下文章