zoukankan      html  css  js  c++  java
  • 《剑指offer》

    1.剑指 Offer-使用DFS和BFS解机器人的运动范围

    https://mp.weixin.qq.com/s/LV9mGemmg0fvn7kEWCjCMw

    2.BFS和DFS两种方式求岛屿的最大面积

    https://mp.weixin.qq.com/s/x-eBh4Ek1WlxB9v7NpXR2w

    附二叉树的DFS和BFS:

    package traversalAlgorithm;
    
    import java.util.LinkedList;
    import java.util.Stack;
    
    public class DepthFirstTraversal {
        public static void main(String[] args) {
            TreeNode root = new TreeNode(1);
            root.left = new TreeNode(2);
            root.right = new TreeNode(3);
            root.left.left = new TreeNode(4);
            root.left.right = new TreeNode(5);
            root.right.left = new TreeNode(6);
            root.right.right = new TreeNode(7);
    //        preOrderTraverse2(root);
            levelTraverse(root);
        }
    //    1.先序遍历 递归实现
        public static void preOrderTraverse1(TreeNode root){
            if(root==null)return;
            System.out.print(root.val+" ");
            preOrderTraverse1(root.left);
            preOrderTraverse1(root.right);
        }
    //    2.先序遍历 非递归实现---栈
        public static void preOrderTraverse2(TreeNode root) {
            if(root==null)return;
            Stack<TreeNode> stack = new Stack<>();
            stack.push(root);
            while(!stack.isEmpty()){
                TreeNode node = stack.pop();
                System.out.print(node.val+" ");
                if(node.right!=null) stack.push(node.right);
                if(node.left!=null) stack.push(node.left);
            }
        }
    //    3.层次遍历 / 广度遍历
        public static void levelTraverse(TreeNode root) {
            if(root==null) return;
            LinkedList<TreeNode> queue = new LinkedList<>();
            queue.offer(root);
            while(!queue.isEmpty()){
                TreeNode node = queue.poll();
                System.out.print(node.val+" ");
                if(node.left!=null) queue.offer(node.left);
                if (node.right!=null) queue.offer(node.right);
            }
        }
    }
    View Code
  • 相关阅读:
    sql server 去掉重复项
    mvc2.0与3.0 便利一行三个元素 便利多行代码
    新距离
    Android
    Java
    计算机文化基础期末考试复习
    立体的导航条
    腾讯微博
    1637
    私有变量
  • 原文地址:https://www.cnblogs.com/jingpeng77/p/13461751.html
Copyright © 2011-2022 走看看