插入排序链表
来源:互联网 发布:百度php面试题 编辑:程序博客网 时间:2024/05/22 10:43
用插入排序实现对链表的排序
代码:
/** * Definition for singly-linked list. * struct ListNode { * int val; * ListNode *next; * ListNode(int x) : val(x), next(NULL) {} * }; */class Solution {public: ListNode *insertionSortList(ListNode *head) { if(head==NULL || head->next==NULL) return head; ListNode *dummy = new ListNode(0); ListNode *pre = dummy; ListNode *cur = head; while(cur!=NULL){ ListNode *next = cur->next;//记录下一个 pre = dummy;//回归原位(从头开始找) while(pre->next!=NULL && pre->next->val < cur->val){//直到找到cur的位置(cur<prenext的位置) pre = pre->next; } //把cur插入pre和pre的next之间 cur->next = pre->next; pre->next = cur; //cur移到后一个 cur = next; } return dummy->next; }};
阅读全文
0 0
- 排序3:插入排序(普通插入排序 + 折半插入排序 + 链表插入排序 + 希尔排序)
- 链表插入排序
- 链表插入排序
- 链表插入排序
- 链表插入排序
- 链表插入排序
- 链表插入排序
- 链表插入排序
- 链表插入排序
- 链表插入排序
- 链表插入排序
- 链表插入排序
- 链表插入排序
- 链表插入排序
- 链表插入排序
- 链表插入排序
- 链表插入排序
- 链表插入排序
- 动态内存分配
- 阿里云oss接口listObjects获取文件列表出现空目录
- 数组中重复的数字
- 【Cocos2d-x】开发基础-第一个Cocos2d-x游戏
- echarts动态报表
- 插入排序链表
- ActiveMQ集群:网络连接模式(network connector)详解 .
- HDU 4689 Derangement【DP递推】【好题】【思维题】
- 2. 线性结构--栈
- tensorflow1.1/线性回归
- 建立自己的Github Repository
- 设计模式--CGLib动态代理的实现与解析
- Android MPChart 可跨屏幕可滑动 扩展项目 OpenCodeMpSiChart
- 浅谈JavaScript之DOM