zoukankan      html  css  js  c++  java
  • 写颗搜索二叉树动动脑,开启今年的旅程,新年快乐

    没事总喜欢写二叉树, 发现这东西把脑袋开启

    今年任务, 加密安全字符集, 内存篇,网络篇,数据存储篇,加油

    package com.he.test;
    
    /**
     * happy new year
     * 
     * @author hejb
     *
     */
    public class Start {
        class Node {
            public Node(long value, int level) {
                this.value = value;
                this.level = level;
            }
    
            public Long value;
            public int level;
            public Node leftNode;
            public Node rigtNode;
        }
    
        public static long max = 7;
    
        public static Node root;
    
        public Start(long value) {
            root = new Node(value, 0);
    
        }
    
        public void insetTree(Node node, long value, int level) {
            level++;
            if (value < node.value) {
                if (node.leftNode == null) {
                    Node nodeItem = new Node(value, level);
    
                    node.leftNode = nodeItem;
                } else {
                    insetTree(node.leftNode, value, level);
                }
            } else {
                if (node.rigtNode == null) {
                    Node nodeItem = new Node(value, level);
                    node.rigtNode = nodeItem;
                } else {
                    insetTree(node.rigtNode, value, level);
                }
            }
        }
    
        // 前序遍历
        public void printNode(Node node) {
            System.out.println("节点值:" + node.value + ",属于树的第--->" + node.level + "层");
            if (node.leftNode != null) {
                printNode(node.leftNode);
            }
            if (node.rigtNode != null) {
                printNode(node.rigtNode);
            }
        }
    
        public void printTree() {
            printNode(root);
        }
    
        public void insert(int value) {
            insetTree(root, value, 0);
        }
    
        public static void main(String[] args) {
            Start s = new Start(5);
            s.insert(4);
            s.insert(6);
            s.insert(3);
            s.insert(10);
            s.insert(8);
            s.insert(5);
            s.printTree();
        }
    }

    应该是生成下面这个树

           5
        4      6
      3      5    8
    1
  • 相关阅读:
    Java动态代理设计模式
    AOP的相关概念
    如何解决表单提交的中文乱码问题
    怎么防止重复提交
    http的响应码200,404,302,500表示的含义分别是?
    JSP三大指令是什么?
    说一下 session 的工作原理?
    session 和 cookie 有什么区别?
    说一下 JSP 的 4 种作用域?
    jsp有哪些内置对象?作用分别是什么?
  • 原文地址:https://www.cnblogs.com/springsource/p/6370966.html
Copyright © 2011-2022 走看看