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

    package chap10;
    
    import static org.junit.Assert.*;
    
    import java.util.Stack;
    
    import org.junit.Test;
    
    public class exec10_4_4 {
        /**
         * 将该树打印
         * 
         * @param tree
         */
        static void printTree(TreeWithRoot tree) {
            printNode(tree.root.node);
        }
    
        /**
         * 遍历一个树的非递归方法,用一个栈实现
         * 
         * @param node
         */
        static void printNode(Node1 node) {
            if (node == null) {
                System.err.println("tree is null");
            }
            Stack<Node1> nodes = new Stack<Node1>();
    
            do {
                System.out.print(node.key + " ");
                if (node.right_sibling != null) {
                    nodes.push(node.right_sibling);
                }
                if (node.left != null) {
                    node = node.left;
                } else {
                    node = nodes.pop();
                }
            } while (nodes != null);
        }
    
        /**
         * 创建一个树,弱智方法
         * 
         * @return
         */
        static TreeWithRoot creatTree() {
            TreeWithRoot t = new TreeWithRoot();
            Root1 r = new Root1();
            Node1 n1, n2, n3, n4, n5, n6, n7, n8, n9, n0;
            n1 = new Node1(0);
            n2 = new Node1(1);
            n3 = new Node1(2);
            n4 = new Node1(3);
            n5 = new Node1(4);
            n6 = new Node1(5);
            n7 = new Node1(6);
            n8 = new Node1(7);
            n9 = new Node1(8);
            n0 = new Node1(9);
    
            t.root = r;
            r.node = n0;
            n0.left = n1;
            n1.right_sibling = n2;
            n2.left = n3;
            n3.right_sibling = n4;
            n3.left = n5;
            n5.left = n6;
            n6.right_sibling = n7;
            n7.right_sibling = n8;
            n7.left = n9;
            return t;
        }
    
        @Test
        public void testName() throws Exception {
            TreeWithRoot t1 = creatTree();
            printTree(t1);
    
        }
    }
    我在
  • 相关阅读:
    APP上线审核注意事项
    xcode环境变量设置(转载)
    iOS 工程中 Other Linker Flags
    iOS 打开应用与系统功能的调用
    在oc中一些常用的宏定义总结
    WebViewJavascriptBridge的简单应用
    UITextField 对键盘一些常用属性 记录一下
    UITextInputMode类的使用
    数组和指针
    自定义ViewGroup实现瀑布流效果
  • 原文地址:https://www.cnblogs.com/xiaojintao/p/3783367.html
Copyright © 2011-2022 走看看