最好有算法描述,谢谢

解决方案 »

  1.   

    用结构数组就可以
    struct treeList //定义树型结构
    {
       CString  itemName ;
       int      itemLevel ;
       int      parentLevel;
    };
    CScene  C_Scene[MAX_SCENENUM];
      

  2.   

    itemName    是节点文本内容
    itemLevel   是节点层次信息    这里可以是结构数组中  节点对应的下标
    parentLevel 是父节点层次信息,这里可以是结构数组中父节点对应的下标C_Scene[MAX_SCENENUM]中保存所有节点的信息
    MAX_SCENENUM可以是固定大小,也可以是计算出来的所有节点的数目
      

  3.   

    Example
    typedef struct S_TREE
    {
        char nameData[128];
        S_TREE *pChild;
        S_TREE *pNext;
    }
      

  4.   

    可以这样
    typedef struct treenode
    {
        CString nodeText;
        int   nLevel; // 在树中的层次
        int   nOrder; // 在树中的顺序
    }
    比如只有一个根节点的树,则其根节点为:{root, 0, 1},根节点为第0层,第一个节点
    把所有的节点保存为一个数组,并且按照顺序大小升序排列,很容易将数组变为树结构