树的说明

原创 2004年06月26日 01:28:00

树是由节点构成的,在java中是用DefaultMutableTreeNode类来创建节点。创建的过程很简单,首先
创建一个根节点,然后创建根节点的孩子,让后用add(MutableTreeNodenewChild)方法将孩子节点添加
到父节点中,依次类推


//创建节点
DefaultMutableTreeNode rootNode = new DefaultMutableTreeNode("Java");
DefaultMutableTreeNode books = new DefaultMutableTreeNode("Java书籍");
DefaultMutableTreeNode tools = new DefaultMutableTreeNode("Java开发工具");

//添加子节点
rootNode.add(books);
rootNode.add(tools);

books.add(new DefaultMutableTreeNode("Java高级实例编程"));
books.add(new DefaultMutableTreeNode("Java编程思想"));
books.add(new DefaultMutableTreeNode("Java编程详解"));


tools.add(new DefaultMutableTreeNode("JBuilder"));
tools.add(new DefaultMutableTreeNode("JCreator"));
tools.add(new DefaultMutableTreeNode("Visual J++"));

树模型
跟其他模型一样,树模型用于操作数据,并通知视图进行更新。
TreePath类
void removeNode()
 {
  //获取当前节点路径
  TreePath selectedPath= tree.getSelectionPath();
  if(selectedPath!=null)
  {
   DefaultMutableTreeNode selectedNode;
   DefaultTreeModel treeModel;
   //获取当前节点
   selectedNode=(DefaultMutableTreeNode)selectedPath.getLastPathComponent();
   treeModel=(DefaultTreeModel)tree.getModel();
   //删除节点
   treeModel.removeNodeFromParent(selectedNode);
  }
 }
 void addNode()
 {
  DefaultMutableTreeNode newNode;
  newNode= new DefaultMutableTreeNode(textField.getText());
  //获取当前节点的路径
  TreePath selectedPath=tree.getSelectionPath();
  if(selectedPath!=null)
  {
   DefaultMutableTreeNode selectedNode;
   DefaultTreeModel treeModel;
   //获取当前节点
   selectedNode=(DefaultMutableTreeNode)selectedPath.getLastPathComponent();
   treeModel=(DefaultTreeModel)tree.getModel();
   //增加节点
   treeModel.insertNodeInto(newNode,selectedNode,selectedNode.getChildCount());
  }
 }

说明树

___dtree.css .dtree {     font-family: Verdana, Geneva, Arial, Helvetica, sans-serif;     font-si...
  • okkeqin
  • okkeqin
  • 2014年06月13日 12:31
  • 467

ORACLE B树索引概念的理解

B树索引的概念: B树索引是一个典型的树结构,不紧oracle,很多实际应用都用到,在oracle里面分三个索引块 1 - 叶子节点块(leaf block):直接指向表里的数据行。 2 - 分支节点...
  • diyyong
  • diyyong
  • 2014年02月13日 14:26
  • 3276

树的说明

树是由节点构成的,在java中是用DefaultMutableTreeNode类来创建节点。创建的过程很简单,首先创建一个根节点,然后创建根节点的孩子,让后用add(MutableTreeNodene...
  • binflyer
  • binflyer
  • 2006年09月28日 19:46
  • 505

混合树的说明

在游戏动画中,一种常见的需求是对两个或更多的相似的运动进行混合,一个常见的例子是根据角色的移动速度队走路和跑步动画的进行混合,另一个常见的例子是角色在跑动时向左或向右倾斜移转弯,需要强调的是,动画的过...
  • u012487582
  • u012487582
  • 2014年04月17日 11:38
  • 900

AVL树的旋转图解和简单实现

AVL树是带有平衡条件的查找二叉树。这个平衡条件要容易保持,而且他要保证树的深度为O(logN)原文地址:http://blog.csdn.net/qq_25806863/article/detail...
  • qq_25806863
  • qq_25806863
  • 2017年07月07日 18:03
  • 487

顺序统计树

      在包含n个元素的无序集合中,寻找第i个顺序统计量的时间复杂度为O(n)。通过建立一种特定的结构,可以使得任意的顺序统计量都可以在O(lgn)的时间内找到。这就是下面会提到的基于红黑树的顺序...
  • zhanglei8893
  • zhanglei8893
  • 2011年06月06日 23:24
  • 4031

android源代码目录树说明

Android 2.1 |-- Makefile |-- bionic (bionic C库) |-- bootable (启动引导相关代码) |-- build (存放系统编译规则及generic等...
  • u013439332
  • u013439332
  • 2014年02月20日 16:07
  • 1275

innodb B+树的分裂

mysql5.7.26中,B+树的分裂又经过了优化。 进行分裂时,如果定位的cursor是当前页的尾部,先试图向右兄弟页插入。 如果插入失败,再进行分裂。减少分裂次数。 btr_page_spl...
  • yanzongshuai
  • yanzongshuai
  • 2016年02月19日 22:10
  • 1165

词性标记说明(Penn Treebank Tagset 宾州树库)

转自:http://blog.csdn.net/wskings/article/details/17607021 最近在做命名实体识别,用到Stanford-CoreNlp词性标记,由于不是语言学...
  • qq_27437967
  • qq_27437967
  • 2017年05月10日 17:07
  • 770

【经典】进化树问题

这个问题很经典啊。。想了我一下午 题目描述 树可以用来表示物种之间的进化关系。一棵“进化树”是一个带边权的树,其叶节点表示一个物种,两个叶节点之间的距离表示两个物种的差异。现在,一个重要的...
  • a710128
  • a710128
  • 2015年02月24日 19:50
  • 772
内容举报
返回顶部
收藏助手
不良信息举报
您举报文章:树的说明
举报原因:
原因补充:

(最多只允许输入30个字)