分隔链表

给定一个链表和一个特定值 x,对链表进行分隔,使得所有小于 x 的节点都在大于或等于 x 的节点之前。

你应当保留两个分区中每个节点的初始相对位置。

示例:

输入: head = 1->4->3->2->5->2, x = 3

输出: 1->2->2->4->3->5

 class Solution{
public:
ListNode *partition(ListNode *head,int x){
ListNode *dummy=new ListNode(-1);
dummy->next=head;
ListNode *pre=dummy,*cur=head;
while(pre->next&&pre->next->val<x) pre=pre->next;
cur=pre;
while(cur->next){
if(cur->next->val<x){
ListNode *tmp=cur->next;
cur->next=tmp->next;
tmp->next=pre->next;
pre->next=tmp;
pre=pre->next;
}else{
cur=cur->next;
}
}
return dummy->next;
}
};

最新文章

  1. MySQL入门(三)
  2. SpringMVC——form标签的使用
  3. UI Automator Viewer获取手机镜像时报错
  4. 简谈Java的join()方法
  5. SSI框架中配置log4j
  6. &lt;转&gt;ERP的测试用例模板
  7. make TARGET_PRODUCT=am335xevm OMAPES=4.x rowboat_clean 出现sgx相关的错误
  8. middlewares in GCC
  9. 使用原生JS定位网页元素
  10. iis / asp.net 使用 .config 和 .xml 文件的区别
  11. tensorflow deepmath:基于深度学习的自动化数学定理证明
  12. IntelliJ IDEA的main方法,for循环,syso的快捷键
  13. MySQL针对对账数据,每天每个店只能产生一条对账记录,对数据库数据进行添加联合唯一索引设置
  14. Navicat 远程连接 Oracle11g 数据库报错 No listener 的问题
  15. 读书笔记 C# 接口中的索引器之浅析
  16. Shiro Realm
  17. ipsec在企业网中的应用(IKE野蛮模式)(转)
  18. UINavigationController详细(转)
  19. Nginx主动检测方案---Tengine
  20. 【转】【C#】实现依赖注入

热门文章

  1. bzoj 3231: [Sdoi2008]递归数列【矩阵乘法】
  2. 键盘按钮keyCode大全:获取按键对应的键值的方法
  3. loadrunner中get和post请求
  4. Manacher BestCoder Round #49 ($) 1002 Three Palindromes
  5. ASP.NET中的&lt;%%&gt;介绍
  6. React 篇 Search Bar and content Table
  7. C#常见问题总结(三)
  8. python自动化--语言基础五面向对象、迭代器、range和切片的区分
  9. Angular——配置模块与运行模块
  10. What is JSON