如果当前结点不是,那么就要找当前的下一个,那么当前的下一个的"Node previous"就应该是当前的,也就是this.比如说:
A,B,C三个结点,当判断A不是的时候,那么就应该判断B了,对于B的前一个结点应该是A,所以不在A结点删除的时候,把A结点当前B的前一个结点传下去,如果传到B的时候,也不是,那么就要把B当成前一个结点传给C了

解决方案 »

  1.   

    //root = a;deleteNode(c);
    // this.root.next.delete(this.root,data);
    b.next.delete(a,c);
    c.next.delete(b,c);
    // c符合条件了
    b.next = c.netx;
      

  2.   

    链表是这样子的其实:header-->Node1-->Node2-->Node3-->tail比如当前指针指向:curr->Node1;
    在查询的时候会先保存上一个节点。如:pre-->header
    再向前走时,会先:curr = curr ->next;
    pre = pre-->next.相当同时走啦。建议LZ认真看一下数据结构的链表这张。