zoukankan      html  css  js  c++  java
  • 第十章 基本数据结构 练习 10.4-3

    package chap10;
    
    import static org.junit.Assert.*;
    
    import java.util.Stack;
    
    import org.junit.Test;
    
    public class exec10_4_3 {
        /**
         * 将该树打印
         * 
         * @param tree
         */
        static void printTree(Tree tree) {
            Root root = tree.root;
            if (root != null) {
                Node node = root.node;
                printNode(node);
            }
        }
    
        /**
         * 遍历一个树的非递归方法,用一个栈实现
         * 
         * @param node
         */
        static void printNode(Node node) {
            Stack<Node> nodes = new Stack<Node>();
            do {
                if (node != null) {
                    System.out.println(node.key);
                    if (node.right != null) {
                        nodes.push(node.right);
                    }
                    node = node.left;
                } else {
                    node = nodes.pop();
                }
            } while (nodes != null);
        }
    
        /**
         * 创建一个树,弱智方法
         * 
         * @return
         */
        static Tree creatTree() {
            Tree t = new Tree();
            Root r = new Root();
            Node n1, n2, n3, n4, n5, n6, n7, n8, n9, n0;
            n1 = new Node(0);
            n2 = new Node(1);
            n3 = new Node(2);
            n4 = new Node(3);
            n5 = new Node(4);
            n6 = new Node(5);
            n7 = new Node(6);
            n8 = new Node(7);
            n9 = new Node(8);
            n0 = new Node(9);
            t.root = r;
            r.node = n0;
            n0.left = n1;
            n0.right = n2;
            n1.left = n3;
            n1.right = n4;
            n2.left = n5;
            n2.right = n6;
            n3.left = n7;
            n4.left = n8;
            n5.right = n9;
    
            return t;
        }
    
        @Test
        public void testName() throws Exception {
            Tree t1 = creatTree();
            printTree(t1);
        }
    }
  • 相关阅读:
    【BootStrap】有序/无序列表 代码和表单
    【BootStrap】BootStrap排版
    【BootStrap】栅格系统
    【Django】组合筛选
    【Ajax】Ajax全套+跨域Ajax
    【JavaScript】JavaScript面试题1
    【Django】Form组件-1
    【Django】cookie和session
    【Django】 Admin 管理工具
    【Django】ORM操作数据库
  • 原文地址:https://www.cnblogs.com/xiaojintao/p/3782981.html
Copyright © 2011-2022 走看看