博客
关于我
强烈建议你试试无所不能的chatGPT,快点击我
[LeetCode 题解]: Insertion Sort List
阅读量:5264 次
发布时间:2019-06-14

本文共 1094 字,大约阅读时间需要 3 分钟。

Sort a linked list using insertion sort.

题目要求:链表的插入排序,由于没有时间复杂度的要求,可以直接循环操作。

/** * Definition for singly-linked list. * struct ListNode { *     int val; *     ListNode *next; *     ListNode(int x) : val(x), next(NULL) {} * }; */class Solution {public:    ListNode* insert(ListNode* head,int num){        ListNode *node = new ListNode(num);        if(head==NULL || num <= head->val){            node->next=head;            return node;        }                ListNode *pre = head;        ListNode *tail = head->next;        while(tail!=NULL && num > tail->val){  // 一定要注意tail!=NULL 先决条件                pre= tail;                tail=tail->next;        }        node->next = pre->next;        pre->next = node;        return head;            }    ListNode* insertionSortList(ListNode *head){        if(head==NULL || head->next==NULL) return head;        ListNode *tmp = head;        ListNode* ans=NULL;        while(tmp!=NULL){            ans = insert(ans,tmp->val);            tmp =tmp->next;        }        return ans;    }};

转载请注明出处: 谢谢!

转载于:https://www.cnblogs.com/double-win/p/3873881.html

你可能感兴趣的文章
.net Core 图片验证码 基于SkiaSharp实现
查看>>
fish redux 个人理解
查看>>
java 笔记一些
查看>>
BZOJ2339 HNOI2011卡农(动态规划+组合数学)
查看>>
BZOJ3811 玛里苟斯(线性基+概率期望)
查看>>
简单的异步函数async/await例子
查看>>
一个点击事件引发的案件
查看>>
Android.mk介绍
查看>>
octave基本操作
查看>>
排球计分程序重构(一)
查看>>
go 文件上传
查看>>
axure学习点
查看>>
javascript: 处理URL字符串
查看>>
MATLAB数值计算与数据分析(2)
查看>>
JUnit
查看>>
WPF文本框只允许输入数字[转]
查看>>
事务的四种隔离级别和七种传播行为
查看>>
dom4j 通用解析器,解析成List<Map<String,Object>>
查看>>
13. 用Roberts、Sobel、Prewitt和Laplace算子对一幅灰度图像进行边缘检测。观察异同。...
查看>>
第一个项目--用bootstrap实现美工设计的首页
查看>>