上面的两篇博客分析了树和结节各自的处理,下面给出一个查看树型结构的类,通过调用这个类可以看出相应的结点及子结点信息,显示方式经过简单的格式处理形成有层次和缩进的效果。
下面直接放代码:
package com.power.tool.tree.util;
import com.ylsoft.power.tool.tree.node.Node;
public class TreePrinter<T> {
/**
* *
*
* @param args
*/
public static void main(String[] args) {
}
static String seprator = " ";
/**
* * 打印 *
*
* @param topnode *
* @param num
*/
public void print(Node<T> topnode, int num) {
if (topnode == null) {
System.out.println("null");
} else {
System.out.println(seprator.substring(0, num) + topnode + "|"
+ topnode.getGrade() + "|" + topnode.getSubLevels());
if (topnode.getChildren() != null) {
if (topnode.getChildren().size() > 0) {
num += 5;
System.out.println(seprator.substring(0, num - 5) + "{");
for (Node<T> n : topnode.getChildren()) {
print(n, num);
}
System.out.println(seprator.substring(0, num - 5) + "}");
}
}
}
}
}
效果图:
- 大小: 22 KB
分享到:
相关推荐
这是JavaScript资料大集成包括3本详细的实用教程,若干测试用例,多种树形结构和word教学文档,对新手学习javascript有很大的帮助。
由于这些我也是才入门的时候写的,进行测试等用的,所以比较适合新手,对学习LDAP,extjs会有一定的帮助。 (需要改正的是extjs里那个节点的id要加上前面的id才行,比如ou=mail; 那它的子节点cn=wang的id应该是...
内容索引:脚本资源,Ajax/JavaScript,树形菜单 JavaScript实现在树形菜单中添加、删除节点实例,本程序侧重于学习,主要介绍一种在多级树节点中创建节点、删除节点,帮助了解树形菜单创作原理。测试中发现代码似乎...
一个优秀的JS无限级树形菜单解决方案。基于JavaScript/XHTML/CSS 标准实现,适应多种浏览器环境。它具有表现和数据分离,一个页面可以应用多个无限级菜单树,多达4种展开模式,支持丰富的功能/表现定制:拥有表现和...
逻辑结构:描述数据元素之间的逻辑关系,如线性结构(如数组、链表)、树形结构(如二叉树、堆、B树)、图结构(有向图、无向图等)以及集合和队列等抽象数据类型。 存储结构(物理结构):描述数据在计算机中如何...
XML Notepad 提供了一个图形化显示 XML 数据树形结构的交互式且简单的用户界面。应用标准的 XML(原型,属性和文本)创建区块,开发者可以创建可以被简单填充的可重复使用的数据结构。该软件还包括用于可视化比较两...
但是,在某些情况下需要这样做时,本库旨在为您提供帮助。安装及使用该插件仅针对Vue 2进行了测试。安装浏览器包括vuequery.min.js作为脚本: < script src =" dist/vuequery.min.js " > </ script > ...
修改实体之后,会帮助你找到所有需要修改的东西,并且给出最佳的修改方案。 统一代码编程风格(如同一项目中选择几种不同日历控制) 把自己的项目模板化(关系化),方便之后使用 把模板化的项目放到Mgicode市场...
如果一个数据结构不是线性结构,则称之为非线性结构。数组、广义表、树和图等数据结构都是非线性结构。 (2)线性表的顺序存储结构具有以下两个基本特点: ① 线性表中所有元素所占的存储空间是连续的; ② 线性表中...
1、树形结构模块图 2、模块功能概述 程序概述:设计录入词库的结构体,结构体中分别存放英文和中文,整个程序基本上就是 关于结构体的操作,其中包括了顺序结构、循环结构、选择结构。 单词添加:用户自己...
课程中不仅仅设计了各种二叉树和哈希表的操作,同时也设置了很多的代码调试函数,可以方便进行程序测试,直观地观察二叉树和哈希表地图形形状。方便理解代码地执行过程。对于初学C语言地数据结构很友好。另外对于...
(1) 基本思想:堆排序是一树形选择排序,在排序过程中,将R[1..N]看成是一颗完全二叉树的顺序存储结构,利用完全二叉树中双亲结点和孩子结点之间的内在关系来选择最小的元素。 (2) 堆的定义: N个元素的序列K1,K2,...
3 数据挖掘的主要方法 1) 决策树法 决策树是一种对实例进行分类的树形结构,由节点和有向边组成。节点的类型 有2种:内部节点和叶子节点。内部节点一般表示一个特征或属性的测试条件,叶子节点 则表示一个分类。 ...
1个目标文件,JNDI的使用例子,有源代码,可以下载参考,JNDI的使用,初始化Context,它是连接JNDI树的起始点,查找你要的对象,打印找到的对象,关闭Context…… ftp文件传输 2个目标文件,FTP的目标是:(1)提高...
如何判断应用是不是需要一个导航功能,并且知道在什么情况下选择平铺导航、标签导航、树形结构导航中的哪一种或者同时综合使用3种导航模式。 第7章“iPhone与iPad应用开发的差异”。掌握 iPhone和iPad设备使用场景上...
Balsamiq Mockups是一款免费的带有手绘风格的原型设计软件,可以帮助你设计桌面应用软件,Web 2.0 站点, RIA富网络应用程序, Web站点和Web应用软件。 功能和亮点: 操作方面:拖拽,控件分组,甚至元素之间的对齐...
可配置的树形浏览能够显示同PL/SQL开发相关的全部信息,使用该浏览器可以获取对象描述、浏览对象定义、创建测试脚本以便调试、使能或禁止触发器或约束条件、重新编译不合法对象、查询或编辑表格、浏览数据、在对象...
对象浏览器——可配置的树形浏览能够显示同PL/SQL开发相关的全部信息,使用该浏览器可以获取对象描述、浏览对象定义、创建测试脚本以便调试、使能或禁止触发器或约束条件、重新编译不合法对象、查询或编辑表格、...