`
keating
  • 浏览: 167251 次
  • 性别: Icon_minigender_1
  • 来自: weihai
社区版块
存档分类
最新评论

用数组来实施树的小程序

阅读更多
public class ArrayTree{
  Object[] array;
  int size;
  public ArrayTree(){
    array=new Object[128];
  }
  public Object getCargo(int i){
    return array[i];
  }
  public void setCargo(int i,Object obj){
    array[i]=obj;
  }
  public int getLeft(int i){return 2*i;}
  public int getRight(int i){return 2*i+1;}
  public int getParent(int i){return i/2;}

  public static void main(String args[]){
    ArrayTree tree=new ArrayTree();
    tree.setCargo(1,"cargo for root");
    tree.setCargo(tree.getLeft(1),"cargo for left");
    tree.setCargo(tree.getRight(1),"cargo for right");
    tree.print(1);
  }
  public void print(int i){
    Object cargo=this.getCargo(i);
    if(cargo==null) return;
    System.out.println(cargo);
    print(getLeft(i));
    print(getRight(i));
  }
}


《探秘JAVA》
分享到:
评论

相关推荐

    二叉排序树与平衡二叉树的实现

    建立二插排序树,首先用一个一维数组记录下读入的数据,然后再用边查找边插入的方式将数据一一对应放在完全二叉树相应的位置,为空的树结点用“0” 补齐。 1.2.2 建立二叉排序树 二叉排序树是一种动态树表。其特点...

    计算机二级公共基础知识

    能使用二分法查找的线性表必须满足用顺序存储结构和线性表是有序表两个条件。 “有序”是特指元素按非递减排列,即从小到大排列,但允许相邻元素相等。下一节排序中,有序的含义也是如此。 对于长度为n的有序线性表...

    C++数据抽象和问题求解(第6版).[美]Frank M. Carrano(带详细书签).pdf

    这本经典、畅销的数据结构教材详细介绍了数据抽象的基础知识,强调作为面向对象方法基础原理的规范和实施之间的区别。书中使用的软件工程原则和概念以及UML图便于增强学生的理解。 ◆ 详细介绍了数据抽象,强调规范...

    leetcode小白刷题-spatial-datastructure:空间数据结构

    要有效地实施空间应用程序,需要使用空间数据结构。 空间数据结构存储按位置组织的数据对象,是地理信息系统、计算机图形学、机器人技术和许多其他领域中使用的一类重要数据结构。 2D 范围搜索:突出显示的矩形中有...

    leetcode凑硬币-algorithms:算法

    使用动态规划的矩阵链乘法 找到从矩阵的第一个单元格到达最后一个单元格的最小成本 求矩阵中相邻数构成的最长序列 计算具有给定成本的矩阵中到达目标单元格的路径数 0–1 背包问题 最大化表达式的值 分区问题 | 动态...

    初级java笔试题-cs-study:https://github.com/jwasham/coding-interview-universi

    初级java笔试题目录 ...如果有些讲座太数学了,你可以跳到底部看离散数学视频来获取背景知识。 数据结构 数组 实现一个自动调整大小的向量。 描述: (从15m 32s开始观看) 实现一个向量(具有自动调整大

    Thinking in Java 中文第四版+习题答案

    13.16.3 用Java 1.1 AWT制作窗口和程序片 13.16.4 再探早期示例 13.16.5 动态绑定事件 13.16.6 将商业逻辑与UI逻辑区分开 13.16.7 推荐编码方法 13.17.1 桌面颜色 13.17.2 打印 13.17.3 剪贴板 13.18 可视编程和 ...

    Think in Java(中文版)chm格式

    13.16.3 用Java 1.1 AWT制作窗口和程序片 13.16.4 再探早期示例 13.16.5 动态绑定事件 13.16.6 将商业逻辑与UI逻辑区分开 13.16.7 推荐编码方法 13.17 Java 1.1 UI API 13.17.1 桌面颜色 13.17.2 打印 13.17...

    JAVA_Thinking in Java

    13.16.3 用Java 1.1 AWT制作窗口和程序片 13.16.4 再探早期示例 13.16.5 动态绑定事件 13.16.6 将商业逻辑与UI逻辑区分开 13.16.7 推荐编码方法 13.17 Java 1.1 UI API 13.17.1 桌面颜色 13.17.2 打印 13.17.3 剪贴...

    Java初学者入门教学

    13.16.3 用Java 1.1 AWT制作窗口和程序片 13.16.4 再探早期示例 13.16.5 动态绑定事件 13.16.6 将商业逻辑与UI逻辑区分开 13.16.7 推荐编码方法 13.17 Java 1.1 UI API 13.17.1 桌面颜色 13.17.2 打印 13.17.3 剪贴...

    ThinkInJava

    13.16.3 用Java 1.1 AWT制作窗口和程序片 13.16.4 再探早期示例 13.16.5 动态绑定事件 13.16.6 将商业逻辑与UI逻辑区分开 13.16.7 推荐编码方法 13.17 Java 1.1 UI API 13.17.1 桌面颜色 13.17.2 打印 13.17.3 剪贴...

    java 编程入门思考

    13.16.3 用Java 1.1 AWT制作窗口和程序片 13.16.4 再探早期示例 13.16.5 动态绑定事件 13.16.6 将商业逻辑与UI逻辑区分开 13.16.7 推荐编码方法 13.17 Java 1.1 UI API 13.17.1 桌面颜色 13.17.2 打印 13.17.3 剪贴...

    thinkinjava

    13.16.3 用Java 1.1 AWT制作窗口和程序片 13.16.4 再探早期示例 13.16.5 动态绑定事件 13.16.6 将商业逻辑与UI逻辑区分开 13.16.7 推荐编码方法 13.17 Java 1.1 UI API 13.17.1 桌面颜色 13.17.2 打印 13.17.3 剪贴...

    Thinking in Java(中文版 由yyc,spirit整理).chm

    13.16.3 用Java 1.1 AWT制作窗口和程序片 13.16.4 再探早期示例 13.16.5 动态绑定事件 13.16.6 将商业逻辑与UI逻辑区分开 13.16.7 推荐编码方法 13.17 Java 1.1 UI API 13.17.1 桌面颜色 13.17.2 打印 13.17.3 剪贴...

    Thinking in Java简体中文(全)

    13.16.3 用Java 1.1 AWT制作窗口和程序片 13.16.4 再探早期示例 13.16.5 动态绑定事件 13.16.6 将商业逻辑与UI逻辑区分开 13.16.7 推荐编码方法 13.17 Java 1.1 UI API 13.17.1 桌面颜色 13.17.2 打印 13.17.3 剪贴...

    java联想(中文)

    13.16.3 用Java 1.1 AWT制作窗口和程序片 13.16.4 再探早期示例 13.16.5 动态绑定事件 13.16.6 将商业逻辑与UI逻辑区分开 13.16.7 推荐编码方法 13.17 Java 1.1 UI API 13.17.1 桌面颜色 13.17.2 打印 13.17.3 剪贴...

    JAVA_Thinking in Java(中文版 由yyc,spirit整理).chm

    13.16.3 用Java 1.1 AWT制作窗口和程序片 13.16.4 再探早期示例 13.16.5 动态绑定事件 13.16.6 将商业逻辑与UI逻辑区分开 13.16.7 推荐编码方法 13.17 Java 1.1 UI API 13.17.1 桌面颜色 13.17.2 打印 13.17.3 剪贴...

    算法:python和C中的算法

    3级:构建一个最小堆并按降序对数组进行排序| 3级 :构建一个最小堆并以降序对数组进行排序| 3级:实现合并排序| O(nlogn)| 3级 :在python中实现合并排序| O(nlogn)| 3级:对随机数数组实施快速排序(C)| O...

    MySQL 5.1中文手冊

    12.10. 与GROUP BY子句同时使用的函数和修改程序 12.10.1. GROUP BY(聚合)函数 12.10.2. GROUP BY修改程序 12.10.3. 具有隐含字段的GROUP BY 13. SQL语句语法 13.1. 数据定义语句 13.1.1. ALTER DATABASE语法 ...

    mysql官方中文参考手册

    12.10. 与GROUP BY子句同时使用的函数和修改程序 12.10.1. GROUP BY(聚合)函数 12.10.2. GROUP BY修改程序 12.10.3. 具有隐含字段的GROUP BY 13. SQL语句语法 13.1. 数据定义语句 13.1.1. ALTER DATABASE语法 ...

Global site tag (gtag.js) - Google Analytics