有如下一个树型结构的LISTtree
{
int level
int id
}数据已经拿到:id             level
10              1
12              2
13              2
17              1
18              2
19              2这边一眼就可以看出:
12,13的pid为10
18,19的pid为17请问用程序如何求得它们的PID,level1的PID可以写死为0

解决方案 »

  1.   

    什么意思?为什么不能是
    18,19的pid为10
    12,13的pid为17难道你的pid定义为:
    (1).pid结点的level要小于当前节点的level(或智能是当前level-1)
    (2).pid节点的id要小于当前节点的id如果只能是当前level-1,你就先把数据按level排序,然后去哪个点的pid就搜索当前level-1的那些点,然后筛选就行了。
      

  2.   

    数据拿到时已经排好序了,用人眼看就知道
    12,13的pid为10
    18,19的pid为17现在就是想用机器求
      

  3.   

    我自己用递归可以求出,但是如果这个结构如下:
    id level
    10 1
    12 222 3    //多了一层13 2
    17 1
    18 2
    19 2就不知道怎么判断了,好像这边还要涉及回朔