1。2叉树,不是树?书上说2叉树不是树的特例而是和树完全不相同的数据结构,就是说2叉树根本就不是树?
2。在有序树转换成2叉树中我发现书上把左边的孩子转换成他的父亲就搞定,这样我就有个疑问为什么左边的孩子能等效于右边孩子的父亲?
3。树到底有什作用我用线性表,然后用IF语句来判断一下选择一下不就是能代替树了吗?能举个典型的例子必须用树的吗?

解决方案 »

  1.   

    1、2叉树当然是树,不过是一种特殊的树。
    2、因为它们都是有序的,你要想搞懂的话,可以写一个简单的树试试就知道了。
    3、用线性表当然也可以,可是如果一个树建立好了以后,就不用IF判断了,你觉得哪个简单呢?再有就是在其它的算法处理上,树也有很多的优势,举个最简单的例子,如果你的数据模型本来就是个树形的,哈哈。
      

  2.   

    1。2叉树,不是树?书上说2叉树不是树的特例而是和树完全不相同的数据结构,就是说2叉树根本就不是树?这个我只能说是这本书写得太差了吧,二叉树肯定是树的子集2。在有序树转换成2叉树中我发现书上把左边的孩子转换成他的父亲就搞定,这样我就有个疑问为什么左边的孩子能等效于右边孩子的父亲?这个你没有说清楚具体的操作,有序树的概念是树中任意节点的子结点之间有顺序关系,这种树称为有序树。所以说这种想法是对的。3。树到底有什作用我用线性表,然后用IF语句来判断一下选择一下不就是能代替树了吗?能举个典型的例子必须用树的吗?用树的地方多得很,比如以前一些经典的文件系统都是要用树实现的。你用线性表可以做出这种一层层的文件系统出来??
      

  3.   

    建议好好学学数据结构,很有用的,你的概念错误了
      

  4.   

    2叉树是不是树,要看他们的定义。不同的书定义不完全一样。
    树里面的父亲孩子只是一种说法,不要真当成父亲和儿子的关系(这个当然不能换)。如果把孩子排序,左边的年龄大,长兄如父,就可以理解了(玩笑)。
    树是有层次的结构,区别就在这里。
      

  5.   

    另外,不要把逻辑结构和物理结构混为一谈。数组可以存储树,但数组和树是两回事。
      

  6.   

    在我上学的时候老师也再三强调"二叉树不是树"!
    所谓树,某一节点的子节点是没有严格区分的,而二叉树却有左右子节点之分。
      

  7.   

    找严蔚敏的数据结构,看一下定义不就行了,应该是递归定义。