注册 登录  
 加关注
   显示下一条  |  关闭
温馨提示!由于新浪微博认证机制调整,您的新浪微博帐号绑定已过期,请重新绑定!立即重新绑定新浪微博》  |  关闭

HT·生活

123

 
 
 

日志

 
 

ex147 Insertion Sort List  

2015-05-17 19:56:41|  分类: leetcode |  标签: |举报 |字号 订阅

  下载LOFTER 我的照片书  |
对链表进行插入排序
Sort a linked list using insertion sort.

struct ListNode* insertionSortList(struct ListNode* head) {
if (head == NULL)
return NULL;
struct ListNode*current = NULL, *p = NULL,*p1=NULL,*p2=NULL;
p = (struct ListNode*)malloc(sizeof(struct ListNode*));
p->val = INT_MIN;

p->next = head;
head = p; //给了一个虚拟的头

current = head->next;
head->next = NULL;
while (current != NULL)
{
p = head;
while (p->next != NULL&&p->next->val <= current->val)
{
p = p->next;
}
p1 = p->next;
p2 = current;

current = current->next;
p->next = p2;
p2->next = p1;
}


p = head;
head = head->next;
//free(p); //销毁虚拟的头
//p = NULL;
//不知道为什么在oj上加上这两行可以通过,但是在vs上就不行

return head;
}



  评论这张
 
阅读(6)| 评论(0)
推荐 转载

历史上的今天

评论

<#--最新日志,群博日志--> <#--推荐日志--> <#--引用记录--> <#--博主推荐--> <#--随机阅读--> <#--首页推荐--> <#--历史上的今天--> <#--被推荐日志--> <#--上一篇,下一篇--> <#-- 热度 --> <#-- 网易新闻广告 --> <#--右边模块结构--> <#--评论模块结构--> <#--引用模块结构--> <#--博主发起的投票-->
 
 
 
 
 
 
 
 
 
 
 
 
 
 

页脚

网易公司版权所有 ©1997-2017