怎么理解?没看懂解析

img


为什么最后还保留了一个D 不应该全部删除掉了嘛?循环一旦看到D不应该就把它删除了吗?

这个你可以模拟一下遍历的过程,当指针来到第一个D的时候执行一次移除操作,这时指针指向了原来中间的D,并且指针往后移动一次,移到了最后一个D再次执行移除则会将前面的D移除掉,所以剩下的D应该是最右边的。