Sort a linked list using insertion sort.

链表的插入排序。

需要创建一个虚拟节点。注意点就是不要节点之间断了。

class Solution {
public: ListNode* insertionSortList(ListNode* head) {
if(head==NULL||head->next==NULL)
return head;
ListNode* newhead = new ListNode(-);
newhead->next=head;
ListNode* q=head;
ListNode* p=head->next;
while(p!=NULL){
ListNode* s1=newhead;
ListNode* s2=s1->next;
while(s2!=p&&s2->val<=p->val){
s1=s2;
s2=s2->next;
}
if(s2!=p){
s1->next=p;
q->next=p->next;
p->next=s2; p=q->next;}
else{
q=p;
p=p->next;
}
}
return newhead->next;
}
};

最新文章

  1. linux下mnt目录作用
  2. OC语言-06-OC语言-block与protocol
  3. rabbitMq 转自 http://gaoyangang.iteye.com/blog/1566600
  4. PHP程序员面试技巧之口试题分享
  5. vsftpd.conf配置详解
  6. java中main函数解析(转载)
  7. Happy Matt Friends(dp)
  8. uva 1393 - Highways(容斥原理)
  9. MessagePack简析
  10. 学习Vue.js之vue移动端框架到底哪家强
  11. MySQL数据库优化_limit_2
  12. vmware 下找不到ifcfg-eth0的问题
  13. 自动化web前端测试,自动登录网站.目前发现最靠谱的方法是imacros
  14. python之Map函数
  15. L248 词汇题 2006
  16. cf896C. Willem, Chtholly and Seniorious(ODT)
  17. loadrunner 中Error和failed transaction 的区别
  18. UVa 1602 网格动物(回溯)
  19. js计算时间差(天,小时,分钟,秒)
  20. SiteWhere物联网云平台架构

热门文章

  1. XManager与SecureCRT
  2. server
  3. 腾讯地图JS API实现带方向箭头的线路Polyline
  4. Hibernate 集合映射 一对多多对一 inverse属性 + cascade级联属性 多对多 一对一 关系映射
  5. JavaScript+canvas 绘制多边形
  6. Unreal Engine 4(虚幻UE4)GameplayAbilities 插件入门教程(四)技能屏蔽和简单的Buff等
  7. 纯 CSS 实现波浪效果!
  8. jQuery知识点整合
  9. 前端性能优化--图片懒加载(lazyload image)
  10. 点击&lt;tr&gt;表格行元素进行跳转