美文网首页
二叉树遍历/搜索

二叉树遍历/搜索

作者: R0lan | 来源:发表于2019-03-26 11:29 被阅读0次

遍历

1.宽度优先遍历BFS

利用队列
//Node head;
LinkedList<Node> queue = new LinkedList<>();
// 或者 java.ulti.Queue<Node> queue = new java.util.LinkedList<>();
queue.add(head);
while(!queue.isEmpty()){
    head = queue.pull();
    //各类处理函数
    if(head.left != null){
        queue.add(head.left);
    }
    if(head.right != null){
        queue.add(head.right);
    }
}

2.深度优先遍历DFS

1.递归:前序中序后序

//Node head;
public class Solution {
    public static void recurIter(Node head){
        if (head == null){
            return;
//先序处理
        recurlter(head.left);
//中序处理
        recurlter(head.right);
//后序处理
        }
    }
}

2.非递归:前序中序后序

利用栈

//Node head;
Stack<Node> stack = new Stack<Node>();
// 先序: 先打印当前节点,然后右子树和左子树依次进栈
// 中序
// 后序
}

相关文章

  • 树,二叉树,搜索树

    树,二叉树,搜索树 资料 二叉搜索树 Demo 树的遍历 Demo 题目 ◎ 二叉树的中序遍历 ◎ 二叉树...

  • 2019 算法面试相关(leetcode)--树、二叉树、二叉搜

    翻转二叉树二叉树的前序遍历二叉树的中序遍历二叉树的后序遍历验证二叉搜索树二叉树的最近公共祖先二叉搜索树的最近公共祖...

  • 二分搜索树的遍历

    二分搜索树的遍历和二叉树的遍历是一致的(二分搜索树的实质本身就是一棵二叉树),直接使用二叉树的遍历即可.大一的时候...

  • 二叉树的相关概念和解题套路

    判断一棵二叉树是否是搜索二叉树: 解 : 中序遍历 然后遍历之后 的顺序是升序的 就是平衡二叉树;在遍历过程中把...

  • 5,DFS、BFS

    引用数据结构二叉树的概念:深度优先搜索类似前序遍历、广度优先搜索类似层次遍历 用遍历DOM为例来说明:深度的核心代...

  • 一般二叉树普通二叉树,前、中、后序遍历以及搜索 顺序存储二叉树将数组以树的思想标识,包括前、中、后续遍历 线索化二...

  • 数据结构与算法图的遍历与图的应用

    1.广度优先搜索BFS类似于二叉树的层序遍历算法利用队列实现搜索 2.深度优先搜索DFS类似于树的先序遍历。搜索策...

  • 02-13:leetcode重刷3之树的遍历

    二叉树的遍历: 前序、中序、后序遍历 二叉搜索树 小左,大右,所以二叉搜索树的中序遍历是递增序列 (1)深度优先遍...

  • Serialize and Deserialize BST(非递

    前序遍历利用了二叉搜索树"左小右大"的性质 我的实现利用逐层遍历二叉树去实现适用于所有二叉树

  • 5. 深度优先、广度优先

    1. 二叉树的深度优先遍历和广度优先遍历2. 深度优先搜索递归和非递归实现 深度优先(DFS):前序遍历 广度优先...

网友评论

      本文标题:二叉树遍历/搜索

      本文链接:https://www.haomeiwen.com/subject/uvxgvqtx.html