Sort a linked list using insertion sort.

以第一个元素head后面接null为起始数组,然后后面每个node插入排序,然而超时。

评论区的优化:双指针在原链表上插入排序,且只有在该node需要被插入开始处重置开始指针。

class Solution(object):def insertionSortList(self, head):cur = dummy = ListNode(0)while head:if cur and cur.val > head.val:cur = dummywhile cur.next and cur.next.val < head.val:cur = cur.nextcur.next, cur.next.next, head = head, cur.next, head.nextreturn dummy.next

转载于:https://www.cnblogs.com/lilixu/p/5364698.html

Leetcode 147 Insertion Sort List相关推荐

  1. LeetCode 147. Insertion Sort List 链表插入排序 C++/Java

    LeetCode 147. Insertion Sort List 链表插入排序 C++/Java Sort a linked list using insertion sort. A graphic ...

  2. LeetCode 147. Insertion Sort List

    LeetCode 147. Insertion Sort List Solution1:我的答案 有点笨,有点慢 /*** Definition for singly-linked list.* st ...

  3. [Leetcode]147. Insertion Sort List

    Sort a linked list using insertion sort. 链表的插入排序 思路,递归到链表尾,然后循环插入: 1 /** 2 * Definition for singly-l ...

  4. 147. Insertion Sort List

    /** 147. Insertion Sort List * 2016-6-1 by Mingyang * insertion sort的基本思路要有,两个while循环,一次过,对于每一个值与pre ...

  5. 【leetcode】147. Insertion Sort List

    Sort a linked list using insertion sort. 链表的插入排序. 需要创建一个虚拟节点.注意点就是不要节点之间断了. class Solution { public: ...

  6. LeetCode OJ 147. Insertion Sort List

    Sort a linked list using insertion sort. 对链表使用插入排序还是很简单的,从链表中拆下一个节点,然后把它插入到已经排序的部分的链表中,直到所有节点都被插入.代码 ...

  7. leetcode之Insertion Sort List

    Sort a linked list using insertion sort. 这道题是用链表做插入排序.虽然之前数据结构中学习了链表的插入删除等,但那些都是最简单的基本操作,只是给出一个节点,直接 ...

  8. [Leetcode] Insertion Sort List

    Sort a linked list using insertion sort. 虽然算法很简单,但是链表操作起来实正是烦啊,特别要注意各种边界条件. 1 /** 2 * Definition for ...

  9. leetcode day2 -- Sort List Insertion Sort List

    1.Sort List Sort a linked list in O(n log n) time using constant space complexity. 分析:对链表排序不是第一次见,但是 ...

  10. Leetcode Insertion Sort List

    Sort a linked list using insertion sort. 链表的插入排序,其实有2种特殊情况: 1.插入的值插入到已排序的末尾. 2.插入的值插入到已排序的最前端. 主要设置了 ...

最新文章

  1. 节前福利 | 三位大佬带你从客户成功、销售、市场端打造 To B 运作体系 !
  2. 算法练习day20——190411(重建二叉树、斐波那契数列、跳台阶、矩形覆盖、变态跳台阶、旋转数组的最小数字、矩阵中的路径)
  3. 使用nio多线程下载网络文件实例
  4. markdown 编辑器_Markdown 编辑器使用指南
  5. 解决git bash闪退问题
  6. Nginx使用服务信号升级
  7. 开发工程师的职场人生路(转)
  8. ORACLE SQL总结六:管理方案对象
  9. CentOS查看系统连接状态
  10. 【kafka】kafka_2.11-1.1.0 配置 SASL_PLAINTEXT 认证方式
  11. linux dev nfc,linux下的nfc开发
  12. DeepWalk: Online Learning of Social Representations-2
  13. Python:PyCharm选择性忽略PEP8警告
  14. [通用指导]笔记本内置无线网卡选用
  15. android应用程序在哪找,找不到应用程序的错误android
  16. 浅谈激光导航对机器人自主行走的重要性
  17. MATLAB--从正弦波转换为方波(验证傅里叶级数)
  18. dnf服务器维护2018,2018年更新dnf游戏登陆不上 | 手游网游页游攻略大全
  19. 手撸MIPS32——5、利用Vivado IP设计指令存储器和数据存储器
  20. python 多因素方差分析_多因素方差分析估计平方和的三种方法

热门文章

  1. linux系统调用的使用例子,Linux增加系统调用步骤和实例
  2. origin刻度消失_使用Origin制作XRD图基本技巧,你get到了嘛?
  3. python切面_Python装饰器与面向切面编程
  4. android 人脸特征提取方法,qs_face_points_android
  5. 信用评分卡模型分析(基于Python)--python实现
  6. cocos2d 屏幕適配_cocos2dx 3.2 屏幕适配的理解
  7. 容器技术Docker K8s 22 容器服务ACK基础与进阶-存储管理
  8. 算法:链表实现插入排序Insertion Sort List
  9. 算法:转换二叉查找树为最大值加上当前值的数Convert BST to Greater Tree
  10. 前端获取后台布尔类型_教育平台项目前端:视频讲解