以下内容仅限使用手写链表的朋友们。
如果你 WA 5pts/15pts,那么注意在删除一个位置时不要写成:
l[i-1].r=i+1,l[i+1].l=i-1;
记得写成:
l[l[i].l].r=l[i].r,l[l[i].r].l=l[i].l;
虽然看起来有些抽象,但本质是 l[i-1] 并不一定在 l[i] 左边,同理 l[i+1] 也不一定在 l[i] 右边。真真要看左右边的数还得调用 l[i].l,l[i].r。
l[i-1]
l[i]
l[i+1]
l[i].l,l[i].r