这道题我的初步想法是用两个指针一个指第一次target x出现的node一个最后一次出现的node。然后partition。 但是这样似乎要loop很多次
https://www.youtube.com/watch?v=TARvjokaGxg
Better:
Pre这个指针很重要,因为当cur node要被移动到left半边的时候, 需要让它之前的node指向它之后的node。
if(prev == left) 这里是一个很关键的地方,代表的是一开始的情况。 到后面 prev就跑到跟cur差不多远的地方了,left 指针也许还停留在前半部分。