二叉树-层序遍历

前言

层序遍历:从根结点(第一层)开始,一次向下,从左往右 获取每一层所有结点的值。

代码示例

代码中用到的二叉树BinaryTree类是 树结构-二叉查找树_lujiangui的专栏-CSDN博客 这里自定义的二叉树类

用的Queue类是 线性表-队列_lujiangui的专栏-CSDN博客 里的自定义队列类


    public Queue<K> levelTraversal(){
        Queue<K> keys = new Queue<>();
        Queue<Node> nodes = new Queue<>();
        nodes.add(root);

        while (!nodes.isEmpty()){
            Node<K,V> n = nodes.get();
            keys.add(n.key);
            //判断n有没有左子树
            if (n.left!=null){
                nodes.add(n.left);
            }
            if (n.right!=null){
                nodes.add(n.right);
            }
        }
        return keys;
    }

上一篇:如何解决偶然Maven项目中导入依赖,却一直报错,unresolved dependency


下一篇:解决Linux C中多版本库共存的问题unresolved 符号