SeparatedLinkedList题目描述:给定一个链表的头节点head和一个特定的值x,请分离链表使得所有小于x的节点都出现在大于等于的节点中到x之前。您应该保留两个分区中每个节点的初始相对位置。例子见LeetCode官网。来源:LeetCode链接:https://leetcode-cn.com/probl...版权归LeetCode所有。商业转载请联系官方授权,非商业转载请注明出处。方案一:链表遍历声明两个链表lessThan和moreThan分别存放小于x和不小于x的节点,然后两个指针curLess和curMore分别指向lessThan和moreThan的头节点,然后遍历链表listhead:如果当前节点小于x,则将当前节点加入lessThan列表;如果当前节点不小于x,则将当前节点添加到moreThan列表中。链表头遍历完成后,将lessThan和moreThan的尾节点指向null,避免出现冗余节点,然后将lessThan的尾节点指向moreThan的头节点(即移动节点lessthanx到之前不小于x的节点),最后返回lessThan的下一个节点作为最终结果。publicclassLeetCode_086{publicstaticListNodepartition(ListNodehead,intx){//列表节点小于xListNodelessThan=newListNode(-1);//列表节点不小于xListNodemoreThan=newListNode(-1);ListNodecurLess=lessThan,curMore=moreThan;while(head!=null){if(head.val
