LeeCode-Insertion Sort List
2015-07-20 09:29
447 查看
Sort a linked list using insertion sort.
/** * Definition for singly-linked list. * struct ListNode { * int val; * struct ListNode *next; * }; */ struct ListNode* insertionSortList(struct ListNode* head) { struct ListNode *p; p=head; int count=0; while(p!=NULL) { count++; p=p->next; } int *array; array=(int *)malloc(count*sizeof(int)); p=head; int i=0,j,k; while(p!=NULL) { array[i]=p->val; p=p->next; i++; } for(i=1;i<count;i++) { for(j=i-1;j>=0;j--) { if(array[j]<array[i]) break; } if(j!=i-1) { int tmp=array[i]; for(k=i-1;k>j;k--) { array[k+1]=array[k]; } array[k+1]=tmp; } } i=0; struct ListNode *q; q=head; while(q!=NULL) { q->val=array[i]; q=q->next; i++; } return head; }
相关文章推荐
- LeeCode-Pow(x, n)
- 【汇总】Android 常用方法整理
- 解决SSH会话连接超时问题
- 线程安全的SRILM语言模型c++接口
- Play!Framework 学习笔记(二):ActionInvoker源码分析
- linux 下的日志相关
- BeagleBone Black:透过SSH控制GPIO引脚
- LeeCode-Merge Sorted Array
- 【网络流】 HDU 3998 Sequence 最多不重合路径
- LeeCode-Power of Two
- List的总结
- JMX学习笔记(一)-MBean
- 【笔记】Service的使用
- 2015互联网女皇报告中文版
- cocos2dx APP图标文件更改(xcoder上传Archive ITMS-90032错误)
- linux系统用户下的crontab任务不执行问题处理
- linux系统用户下的crontab任务不执行问题处理
- 计蒜客---矩阵翻转(简单)
- live555实现共享内存视频直播
- jQuery学习之prop和attr的区别