• 指[use::遍历单向链表]的时候,插入或删除某个节点
    • 要对这个插入或删除做某种补偿操作(防止跳过节点)

示例

    while(cur){
        if(left){
            if(cur.next?.val<x){//主要观测cur.next
                let toInsert = splice(cur)//取出cur下一个node
                //取出会变动cur.next ,所以就不用执行cur = cur.next
                insert(left,toInsert)//left后面插入一个节点
                //在前面插入,不影响后面的遍历
            } else {
                cur = cur.next
            }
        } else if(cur.next?.val>=x){left = cur;cur=cur.next;}
        else {
            cur = cur.next
        }
    }